github.com/esnet/gdg@v0.6.1-0.20240412190737-6b6eba9c14d8/CONTRIBUTING.md (about) 1 # Contributing 2 3 Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given. 4 5 You can contribute in many ways: 6 7 ## Types of Contributions 8 9 ### Report Bugs 10 11 Report bugs at https://github.com/esnet/gdg/issues. 12 13 If you are reporting a bug, please include: 14 15 * Your operating system name and version. 16 * Any details about your local setup that might be helpful in troubleshooting. 17 * Detailed steps to reproduce the bug. 18 19 ### Code Submissions 20 21 Any code submitted to enhance this project is great appreciated, but here's a check list to look at which will help ensure a successful code review. 22 23 1. Make sure the code works, compiles and so on. 24 2. We have a docker-compose file that will bring up an instance of grafana. A variety of integration tests exists under the `integration_tests` folder. Ideally each new entity we introduce should have tests that go with it. Please make sure you have a test for you code submission. 25 3. Configuration Changes: Please update the conf/importer-example.yml if you are introducing any new configs 26 4. Document the code, not every line needs docs, but explaining what the function does is helpful for those that follow. 27 5. The generated docs live under `documentation/content/en/docs/` Please update the md files to reflect your changes to let others know how to use the tool. `usage_guide.md` is likely the only file you'll need to update. 28 - documentation/content/en/docs/releases contains a list of changes, if you are adding a new feature, please add a short description of the upcoming new feature. 29 - documentation/content/en/docs/usage_guide.md provides simple examples. If you're adding a new entity please document its behavior. 30 6. If you've introduced a major change that affects the configuration, please take the time to update the context new wizard to ensure it's captured. 31 32 33 ### Submit Feedback 34 35 The best way to send feedback is to file an issue at https://github.com/esnet/gdg/issues. 36 37 If you are proposing a feature: 38 39 * Explain in detail how it would work. 40 * Keep the scope as narrow as possible, to make it easier to implement. 41 * Remember that this is a volunteer-driven project, and that contributions 42 are welcome :) 43 44 ## Get Started! 45 46 Ready to contribute? Here's how to set up `gdg` for local development. 47 48 1. Fork the `gdg` repo on GitHub. 49 2. Clone your fork locally:: 50 ```bash 51 $ git clone git@github.com:your_name_here/gdg.git 52 ``` 53 3. Create a branch for local development:: 54 ```bash 55 $ git checkout -b name-of-your-bugfix-or-feature 56 ``` 57 Now you can make your changes locally. 58 59 4. When you're done making changes, check that your changes pass the tests:: 60 ```bash 61 $ make test 62 ``` 63 6. Commit your changes and push your branch to GitHub:: 64 ```bash 65 $ git add . 66 $ git commit -m "Your detailed description of your changes." 67 $ git push origin name-of-your-bugfix-or-feature 68 ``` 69 7. Submit a pull request through the GitHub website. 70 71 Pull Request Guidelines 72 ----------------------- 73 74 Before you submit a pull request, check that it meets these guidelines: 75 76 1. The pull request should include tests. 77 2. If the pull request adds functionality, the docs should be updated. Put 78 your new functionality into a function with a docstring, and add the 79 feature to the list in README.md.