Contributing to Beer Garden

We would love for you to help us make Beer Garden better. There are a seemingly infinite number of features that would be great to add. Remember, no contribution is too small.

License Agreement

By contributing to any of the Beer Garden repositories, you agree to license your contributions under the MIT license. This ensures your contributions have the same license as the project and that the community is free to use your contributions. You also assert that you are the original author of the work you are contributing unless otherwise stated.

Submitting an Issue

If you have the next cool idea for Beer Garden, we want to hear about it. We use the issue tracker on GitHub to track bugs/features. Before you submit a request or bug, please make sure it has not already been submitted.

Our ideal feature request comes in with a merge request for a way to implement the feature, but feature requests should at least come with an explanation of how you want the app to behave differently than the current implementation.

If you’ve found a bug in Beer Garden, we would love for you to submit a bug report. When submitting a bug report, please include a Snippet that includes any details that may help reproduce the bug, including your version of Beer Garden, language, language version and operating system.

Most importantly, since Beer Garden is a plugin framework, do not submit bugs with particular plugins in the Beer Garden issue tracker.

Ideal bug reports include a merge request with a failing test.

Submitting a Pull Request

This information is generic on purpose. Each repository in Beer Garden’s components will have their own way to run tests. Please refer to the specific project for detailed information on how to write/run tests for that particular project.
  1. Fork the repository. This will vary based on what project you are working on.

  2. Install the latest development dependencies (usually make deps)

  3. Create a topic branch (use the pattern feature/XYZ where XYZ is the issue number)

  4. Add tests for your unimplemented feature or bug fix.

  5. Run the tests, if your tests pass, return to step 4

  6. Implement your feature or bug fix

  7. Run the tests, if your test fail, return to step 6

  8. Add documentation for your feature or bug fix

  9. Add, commit, and push your changes.

  10. Submit a pull request