Skip to content

Commit c1b8c71

Browse files
kostis-codefreshTchoupinax
authored andcommitted
docs: added release process (argoproj-labs#827)
Signed-off-by: Kostis Kapelonis <[email protected]> Signed-off-by: Tchoupinax <[email protected]>
1 parent 40f6f22 commit c1b8c71

File tree

2 files changed

+64
-0
lines changed

2 files changed

+64
-0
lines changed

docs/contributing/releasing.md

+63
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
# Releasing
2+
3+
Argo Image Updater is released in a 2 step automated fashion using GitHub actions. The release process takes about 20 minutes, sometimes a little less, depending on the performance of GitHub Actions runners.
4+
5+
Releases can only be done by people that have write/commit access on the Argo Image Updater GitHub repository.
6+
7+
## Introduction
8+
9+
First install on your workstation the following:
10+
11+
1. GoLang
12+
1. The `git` executable
13+
1. The [GitHub CLI](https://cli.github.com/)
14+
1. The `semver` cli with `go install github.com/davidrjonas/semver-cli@latest`
15+
16+
Then create a release branch:
17+
18+
```
19+
git clone [email protected]:argoproj-labs/argocd-image-updater.git
20+
git branch -b release-0.13
21+
git push origin release-0.13
22+
```
23+
24+
The release name is just an example. You should use the next number from the [previous release](https://github.com/argoproj-labs/argocd-image-updater/releases). Make sure that the branch is named as `release-X.XX` though.
25+
26+
Also note that `origin` is just an example. It should be the name of your remote that holds the upstream branch of Argo Image updater.
27+
28+
Finally run
29+
30+
```
31+
./hack/create-release-pr.sh origin
32+
```
33+
34+
Again notice that the argument must match the upstream Git remote that you used before. This [command](https://github.com/argoproj-labs/argocd-image-updater/blob/master/hack/create-release-pr.sh) will automatically create a Pull Request in GitHub with the contents of the new release.
35+
36+
## Review the pull request
37+
38+
Visit the Pull Request that you just created in the GitHub UI. Validate the contents of the diff to see the suggested changes.
39+
Once you are happy with the result, approve/merge the Pull Request.
40+
41+
Merging the Pull Request will start an [automated release process](https://github.com/argoproj-labs/argocd-image-updater/blob/master/.github/workflows/create-release-draft.yaml) that will build all the artifacts
42+
and create a draft release.
43+
44+
## Publish the release
45+
46+
You should now have a draft release or Argo Image Updater with all required artifacts attached as binaries.
47+
48+
First, attach the release notes. [GitHub can do it automatically for you](https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes) by clicking the respective button
49+
and selecting from the drop-down menu the previous release.
50+
51+
Finally publish the release by clicking the green button on the bottom left of the screen.
52+
53+
You are finished!
54+
55+
56+
57+
58+
59+
60+
61+
62+
63+

mkdocs.yml

+1
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ nav:
4040
- Contributing:
4141
- Overview: contributing/start.md
4242
- Developing: contributing/development.md
43+
- Releasing: contributing/releasing.md
4344
- Examples: examples/index.md
4445
- Releases ⧉: https://github.com/argoproj-labs/argocd-image-updater/releases
4546
- Roadmap ⧉: https://github.com/argoproj-labs/argocd-image-updater/milestones

0 commit comments

Comments
 (0)