First thing first... Thank you for taking the time to contribute to Centreon project! Much appreciated!
This article contains guidelines for contributing to Centreon project.
Code of Conduct
Any people that wants to contribute and participate in developing the project must respect Centreon Code of Conduct.
How can I contribute?
Centreon community can contribute in many ways to the project.
Your contribution can be in several forms:
- reporting a bug on the product
- requesting an improvement or a functional evolution
- participating in the correction of a bug
- or even participating in the development of Centreon by proposing your development.
I have an issue to report
Before reporting an issue please make sure that it has not been already reported by checking our Centreon bug trackers:
- Centreon (main project, web interface)
- Centreon Collect (for Centreon Engine / Broker / Connectors)
- Centreon Plugins
- Centreon Gorgone
- Centreon Open Tickets module
- Centreon AWIE module
- Centreon DSM module
- Centreon Stream Connectors
- Centreon Widgets
If your issue has not been reported yet, then the issue should be opened in the correct project.
I have a suggestion of enhancement
Any ideas, enhancements, feature requests are more than welcome. You can first start a conversation in this forum and when the the outlines of your requests seem well defined, you can create a feature request in the correct project.
I have a pull request to submit
You have been working on Centreon base code and want to submit it to us. Well... Again you are more than welcome and thank you in advance !
The pull request must comply with certain requirements which are set out in the following template.
Notice: A pull request which contains more than the described modifications or contains more than one issue will be rejected. Kindly write a detailed description and open one pull request per issue.
If the pull request matches the expected requirements, it will be added to a refinement session with the development team and the product owner. If everything is clear, the pull request will be integrated to the development workflow and will be merged if it successfully passes our Continuous Integration's acceptance tests. Afterwards, our Quality Assurance team will test it again to avoid any regressions before the pull request is released.
If the development team needs more details, they will contact you about the pull request. Please stay tuned.
Warning: Any pull request that does not respect the requirements will ultimately be rejected ! In addition, if you are asked to do so, you must help us understand your changes or behavior, and respond to us within 8 days.
Notice: We used another open source project's contribution model as inspiration to provide better communication on your pull request's status : Visual Studio Code.
Here are the labels and descriptions we may add to your work:
Label | Reason |
---|---|
pr/external | The first badge |
status/accepted | The development team has approved your modifications |
status/implemented | The PR has been added or may have already been released in next version |
status/duplicate | Another PR is already open |
status/invalid | The requirements are not met |
status/in-backlog | The development team has groomed your proposition and will work on it soon |
status/could-not-reproduce | The dev was unable to reproduce the use-case and may need more information |
status/needs-attention | This PR is on hold. The reason is specified in the issue |
status/needs-merge | A dev needs to merge your work |
status/too-dangerous | The modification seems to impact too much features or may introduce side effects |
status/multiple-issues | The modifications contain more than one issue in a single PR |
status/out-of-scope | The modifications are out of the described scope |
status/more-info-needed | A dev asked you for more details and is waiting for your reply |
status/wont-fix | The modifications do not fix the described behavior |
I want to develop a new extension (module, widget, stream connector, plugin)
A dedicated chapter in our documentation will explain you how to create new extensions for Centreon.
Centreon style guides
Our guidelines are describe on the Centreon main Github project.