Thanks for your interest in contributing to Score and helping to improve the project 🎵
Before you get started, please note that by contributing to this project, you confirm that you are the author of your work, have the necessary rights to contribute to it, and that your contribution may be provided under the terms of the Apache License, Version 2.0.
If you have questions, ideas, or requests about Score, feel free to open an issue in one of the Score repositories or join the conversation in our Slack community — drop your questions in the #score channel of the CNCF Slack.
We welcome contributions of all kinds:
- Bug fixes and feature development
- Documentation improvements
- Bug and feature reports
Fixes and improvements can be directly addressed by sending a Pull Request on GitHub. Pull requests will be reviewed by one or more maintainers and merged when acceptable.
We ask that before contributing, please make the effort to coordinate with the maintainers of the project before submitting large or high impact PRs. This will prevent you from doing extra work that may or may not be merged.
To contribute to this project, you must agree to the Developer Certificate of Origin (DCO) for each commit you make. The DCO is a simple statement that you, as a contributor, have the legal right to make the contribution.
See the DCO file for the full text of what you must agree to.
To successfully sign off your contribution you just add a line to every git commit message:
Signed-off-by: Joe Smith <joe.smith@email.com>
Use your real name (sorry, no pseudonyms or anonymous contributions.)
If you set your user.name and user.email git configs, you can sign your commit automatically with git commit -s. You can also use git aliases like git config --global alias.ci 'commit -s'. Now you can commit with git ci and the commit will be signed.
To submit any kinds of improvements, please consider the following:
- Submit an issue describing your proposed change.
- Want to get started? Pick an open issue from our Good First and Help Wanted Issues.
- Fork this repository, develop and test your changes.
- Create a
featurebranch and submit a pull request against themainbranch.
-
Please run
make testto execute unit tests. -
Your branch can be merged after:
- CI checks pass
- Your PR is reviewed and approved by a maintainer (see MAINTAINERS.md)
-
If you are new to Score, consider reading our Documentation and Examples
- Rebase to the current
mainbranch before submitting your pull request. - Commits should be as small as possible. Each commit should follow the checklist below:
- For code changes, add tests relevant to the fixed bug or new feature
- Pass the compile and tests in CI
- Commit header (first line) should convey what changed
- Commit body should include details such as why the changes are required and how the proposed changes (we recommened sharing output)
- DCO Signed
- If your PR is not getting reviewed or you need a specific person to review it, please reach out to the Score contributors at the Score slack channel
A LICENSE, and NOTICE file exists in the root directory, and each source code file should contain an appropriate Apache 2 header.
To check and update all files, run:
$ go install github.com/google/addlicense@latest
$ addlicense -l apache -v -ignore '**/*.yaml' -c 'The Score Authors' ./cmd ./internal/
If you have ideas for improving Score, please open an issue in one of the Score repositories and share the use case.
If you need any help, please tag us on issue or reach out to us.
Our Code of Conduct means that you are responsible for treating everyone on the project with respect and courtesy, regardless of their identity. If you are the victim of any inappropriate behavior or comments as described in our Code of Conduct, we are here for you and will do the best to ensure that the abuser is reprimanded appropriately, per our code.