/dcos-go

DC/OS golang shared libraries

Primary LanguageGoApache License 2.0Apache-2.0

dcos-go - DC/OS golang shared packages

Build Status GoDoc Go Report Card

This repository exists to collect commonly shared Go code within Mesosphere. It can include code that is specific to DC/OS and can also include code that is more utilitarian in nature.

Contributing

Everyone is welcome to submit Pull Requests.

If you find yourself writing the same code more than once in separate projects, or have seen the same code in more than one project, it may be a good candidate for inclusion into this repository. Be sure to ask on the mailing list if you are unsure before contributing.

Pull requests should adhere to the following guidelines:

  • Reviewer first: create your changeset with care for the reviewer.
  • The changeset should have a good description.
  • Each commit in the changeset should have a description as well as be focused on one thing.
  • Code must be tested
  • Code should be written with care to allow for non-breaking changes going forward
  • If introducing a new package, the package should have a doc.go file which describes the purpose of the package.
  • Try not to introduce external dependencies unless necessary.

External Libraries

This project uses go mod to manage external dependencies. External libs are vendored into the /vendor directory. There is one set of dependencies for all of the packages that live in this project. If you need to make a change to one of the dependencies, at the current time it will need to be compatible with all of the packages. A passing CI build will ensure this.

Packages In This Library

Note that this package list is manually updated in this README. There is some discussion about automating this process. You can track the progress of this effort by following this ticket.

OSS Projects Using This Library

License

Licensed under the Apache License, Version 2.0.