-
Notifications
You must be signed in to change notification settings - Fork 64
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
docs: update contributing guide for enhancement (#1715)
Signed-off-by: Susan Shi <[email protected]>
- Loading branch information
Showing
1 changed file
with
21 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -10,15 +10,33 @@ Welcome! We are very happy to accept community contributions to Ratify, whether | |
* Checkout the repo locally with `git clone [email protected]:{your_username}/ratify.git`. | ||
* Build the Ratify CLI with `go build -o ./bin/ratify ./cmd/ratify` or if on Mac/Linux/WSL `make build-cli`. | ||
|
||
## Feature Enhancements | ||
For non-trivial enhancements or bug fixes, please start by raising a document PR. You can refer to the example [here](https://github.com/ratify-project/ratify/blame/dev/docs/proposals/Release-Supply-Chain-Metadata.md). | ||
|
||
Major user experience updates should be documented in [/doc/proposals](https://github.com/ratify-project/ratify/tree/dev/docs/proposals). Changes to technical implementation should be added to [/doc/design](https://github.com/ratify-project/ratify/tree/dev/docs/design). | ||
|
||
Consider adding the following section where applicable: | ||
- Proposed changes | ||
- Proposed feature flag | ||
- Impacted code paths | ||
- Required test coverage | ||
- Backward compatibility | ||
- Performance impact | ||
- Security consideration | ||
- Open questions | ||
|
||
This approach ensures that the changes are well-documented and reviewed before implementation. | ||
|
||
## Pull Requests | ||
|
||
If you'd like to start contributing to Ratify, you can search for issues tagged as "good first issue" [here](https://github.com/ratify-project/ratify/labels/good%20first%20issue). | ||
|
||
We use the `dev` branch as the our default branch. PRs passing the basic set of validation can be merged to the `dev` branch, we then run the full suite of validation including cloud specific tests on `dev` before changes can be merged into `main`. All ratify release are cut from the `main` branch. A sample PR process is outlined below: | ||
1. Fork this repo and create your dev branch from default `dev` branch. | ||
2. Create a PR against default branch | ||
3. Maintainer approval and e2e test validation is required for completing the PR. | ||
4. On PR complete, the `push` event will trigger an automated PR targeting the `main` branch where we run a full suite validation including cloud specific tests. | ||
2. Create a PR against default branch. | ||
3. Add new unit test and [e2e test](https://github.com/ratify-project/ratify/tree/dev/test/bats) where approriate. | ||
4. Maintainer approval and e2e test validation is required for completing the PR. | ||
5. On PR complete, the `push` event will trigger an automated PR targeting the `main` branch where we run a full suite validation including cloud specific tests. | ||
6. Manual merge is required to complete the PR. (**Please keep individual commits to maintain commit history**) | ||
|
||
If the PR contains a regression that could not pass the full validation, please revert the change to unblock others: | ||
|