Skip to content

Commit fbc48e7

Browse files
Merge pull request buildpacks-community#1216 from pivotal/enhancement/release-doc
Add RELEASE.md
2 parents 21404dd + f7b49fe commit fbc48e7

1 file changed

Lines changed: 46 additions & 0 deletions

File tree

RELEASE.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Release Process
2+
3+
Kpack release process is composed of 3 phases:
4+
- [Development](#development)
5+
- [Feature Complete](#feature-complete)
6+
- [Release Finalization](#release-finalization)
7+
8+
## Phases
9+
10+
### Development
11+
12+
Our development flow is detailed in [Development](DEVELOPMENT.md).
13+
14+
### Feature Complete
15+
16+
During this period, a **Release Candidate** (RC) is published and used for further User Acceptance testing (`UAT`). Furthermore, additional RCs may be published based on assessment by the `kpack` maintainers of the **impact**, **effort** and **risk** of including the changes in the upcoming release. Any other changes may be merged into the `main` branch through the normal process, and will make it into the next release.
17+
18+
To produce the release candidate a maintainer will:
19+
- Create a new release branch in form `release/<MAYOR-VERSION>.<MINOR-VERSION>.<PATCH-VERSION>-rc.<NUMBER>` yielding a draft GitHub release to be published.
20+
- Publish the [GitHub release][release]:
21+
- Tag release branch as `v<MAYOR-VERSION>.<MINOR-VERSION>.<PATCH-VERSION>-rc.<NUMBER>`.
22+
- Release should be marked as "pre-release".
23+
- The GitHub release will contain the following:
24+
- **artifacts**
25+
- **release notes**
26+
- The release notes should be edited and cleaned
27+
28+
### Release Finalization
29+
30+
The maintainer will:
31+
- Create a new release branch in form `release/<MAYOR-VERSION>.<MINOR-VERSION>.<PATCH-VERSION>` yielding a draft GitHub release to be published.
32+
- Publish the [GitHub release][release] while tagging the release branch as `v<VERSION>`.
33+
- Tag release branch as `v<MAYOR-VERSION>.<MINOR-VERSION>.<PATCH-VERSION>`.
34+
- The GitHub release will contain the following:
35+
- **artifacts**
36+
- **release notes**
37+
38+
And with that, you're done!
39+
40+
## Release automation
41+
42+
- The release candidate process is automated using [GitHub Actions][github-release]. The workflow is triggered by a push to a release branch.
43+
- The release finalization is manual step
44+
45+
[release]: https://github.com/pivotal/kpack/releases
46+
[github-release]: https://github.com/pivotal/kpack/blob/main/.github/workflows/ci.yaml

0 commit comments

Comments
 (0)