diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..30ef5b7 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,30 @@ + + + + + + + +## Contribution Guidelines + +To sign and test your commits, please refer to [Contibution guidelines](./../CONTRIBUTING.md). + +## Checklist +- [ ] Changes tested in [container setup](./../README.md#option-1-teuthology-docker-setup) +- [ ] Changes tested in [non-containerized setup](./../README.md#option-2-non-containerized-with-venv-and-pip) +- [ ] Includes tests +- [ ] Documentation updated diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0fabd95..5eb07dc 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -137,7 +137,64 @@ conda activate teuthology-api 3. Add yourself to the list of contributors in `AUTHORS.rst`. -4. When you’re done editing, do: +### Sign your work + +The sign-off is a simple line at the end of the explanation for the +commit, which certifies that you wrote it or otherwise have the right to +pass it on as a open-source patch. The rules are pretty simple: if you +can certify the below: + +> **Developer's Certificate of Origin 1.1** +> +> By making a contribution to this project, I certify that: +> +> (a) The contribution was created in whole or in part by me and I +> have the right to submit it under the open source license +> indicated in the file; or +> +> (b) The contribution is based upon previous work that, to the best +> of my knowledge, is covered under an appropriate open source +> license and I have the right under that license to submit that +> work with modifications, whether created in whole or in part +> by me, under the same open source license (unless I am +> permitted to submit under a different license), as indicated +> in the file; or +> +> (c) The contribution was provided directly to me by some other +> person who certified (a), (b) or (c) and I have not modified +> it. +> +> (d) I understand and agree that this project and the contribution +> are public and that a record of the contribution (including all +> personal information I submit with it, including my sign-off) is +> maintained indefinitely and may be redistributed consistent with +> this project or the open source license(s) involved. + +then you just add a line saying: + +``` +Signed-off-by: Random J Developer +``` + +using your real name (sorry, no pseudonyms or anonymous contributions). + +**Git can sign off on your behalf** + +Please note that git makes it trivially easy to sign commits. First, set the +following config options: + + $ git config --list | grep user + user.email=my_real_email_address@example.com + user.name=My Real Name + +Then just remember to use ``git commit -s``. Git will add the ``Signed-off-by`` +line automatically. + +Additionally, commits needs to be GPG signed. Instructions to sign your commits can be found [here](https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits). This will result in your commits showing up with a "Verified" badge on Github - read [here](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification) for more details. + +### Commiting your changes + +1. When you’re done editing your changes, do: ``` git add @@ -165,7 +222,7 @@ conda activate teuthology-api to look for recurring communication patterns. ::: -5. Please check that your changes don't break any unit tests with: +2. Please check that your changes don't break any unit tests with: ``` tox