How to contribute
Thank you for taking your valuable time to go through the contributor documentation.
We'd love to review your PRs. Please submit a GitHub issue describing your enhancement or bugfix before starting to work on your proposed changes. Make sure to read the following instructions as well.
#
Pull request process- Fork the project repository, develop and test your changes on that fork
- Commit changes
- Submit a PR from your fork to this project.
#
CommitsPlease have meaningful and well-formed commit messages. This article summarizes nicely the interpretation of "meaningful" and "well-formed".
#
Commit signature verificationEach commit signature must be signed (using the uppercase -S
option of git commit
) and verified (by uploading your public
key to your own GitHub account).
- About commit signature verification
- You can read this excellent article for an overview of git commit signing (if you have read it, we are using option #3).
#
Sign off your changesThe Developer Certificate of Origin (DCO) is a lightweight way for contributors to certify that they wrote or otherwise have the right to submit the code they are contributing to the project. Here is the full text of the DCO.
Contributors must sign-off each commit by adding a Signed-off-by line to commit messages (using the lowercase -s
option of git commit
).
Signed-off-by: Random J Developer <random@developer.example.org>See git help commit:
-s, --signoff Add Signed-off-by line by the committer at the end of the commit log message. The meaning of a signoff depends on the project, but it typically certifies that committer has the rights to submit this work under the same license and agrees to a Developer Certificate of Origin (see http://developercertificate.org/ for more information).
By making a contribution to this project and signing-off your commits, you agree to and comply with the Developer's Certificate of Origin.
#
Pull requests requirementsAll submissions, including submissions by project members, require review. We use GitHub pull requests for this purpose. Consult GitHub Help for more information on using pull requests. See the above stated requirements for PR on this project.
Your PR has to fulfill the following points, to be considered:
- Workflows must pass (see CI pipeline).
- All commits correspond to the requirements (see Commits).
#
VersioningThis project follows the semver standard for everything. Versions are bumped by maintainers. If your contribution contains breaking changes, please explicitly state it in your GitHub issue.
#
ReviewIf your PR does not have any activity after certain days, feel free to comment a reminder. Your PR requires approval to be mergeable.
#
TestingYour PR should enclose updated or new test cases. See Testing.
#
Documentation#
WebsiteThe documentation is done using Docusaurus. Install Docusaurus,
run npm run start
in the /website
directory and start modifying the Markdown
files contained in /website/docs
. Refer directly to the official Docusaurus documentation to learn more.
#
Helm ChartAny change to the Helm Chart's documentation requires you to run helm-docs, which will autogenerate a README.md for the Chart.
#
GodocsAny change to the codebase requires you to update the relative godocs as well.