You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/RELEASE.md
+17-81Lines changed: 17 additions & 81 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,5 @@
1
1
# AWS IAM Authenticator Release Process
2
2
3
-
NOTE: Your GitHub account must have the required permissions and you must have generated a GitHub token.
4
-
5
3
## Choosing the release version and branch
6
4
7
5
Using semantic versioning, pick a release number that makes sense by bumping the major, minor or patch release version. If its a major or minor release (backwards incompatible changes, and new features, respectively) then you will want to start this process with an alpha release first. Here are some examples:
@@ -28,106 +26,44 @@ v1.6.2 -> v2.0.0-alpha.0
28
26
-> v2.0.0
29
27
```
30
28
31
-
You also might need to create a release branch, if it doesn't already exist, if this release requires backporting changes to an older major or minor version. For example, in the case that we are backporting a fix to the v0.5 release branch, and we have a v0.6 release branch (which we don't at the time of writing), then we would do the following:
29
+
You also might need to create a release branch, if it doesn't already exist, if this release requires backporting changes to an older major or minor version. For example, in the case that we are backporting a fix to the v0.5 release branch, and we have a v0.6 release branch, then we would do the following:
32
30
33
31
1. Create the release branch (named release-0.5) if it doesn't exist from the last v0.5.x tagged release (or check it out if it already exists).
34
32
2. Cherry-pick the necessary commits onto the release branch.
35
33
3. Follow the instructions below to create the release commit.
36
34
4. Create a pull request to merge your fork of the release branch into the upstream release branch (i.e. nckturner/aws-iam-authenticator/release-0.5 -> kubernetes-sigs/aws-iam-authenticator/release-0.5).
37
-
5. Follow the instructions below, except creating the tag on the release branch instead of master.
38
-
6. Run goreleaser from the release branch.
35
+
5. CI will handle the rest automatically. This includes:
36
+
- creating and pushing the git tag into the upstream release branch
37
+
- running Goreleaser on the release branch
38
+
- creating the GitHub release
39
+
- Populating the release with the changes
40
+
- building and uploading the binaries to the release
39
41
40
42
## Creating the release commit
41
43
42
-
### Updating the Makefile
43
-
44
-
Bump the version number in the Makefile:
45
-
46
-
```
47
-
VERSION ?= v0.5.2
48
-
```
49
-
50
-
This ensures the binary version is correct.
51
-
52
-
### Updating the CHANGELOG
53
-
54
-
We need to generate the CHANGELOG for the new release by running `./hack/changelog.py`. First check the correctness of the output using the `--print-only` flag. Pass the previous release tag, and the commit SHA of the most recent commit (the new tag will include the changelog, so it hasn't been created yet). The commands use a `--token` field. Generate it from [github personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token).
TODO: configure goreleaser to use `./hack/changelog.py` to format the release text.
48
+
Push (or cherry-pick) the changes to a branch on your fork, and create a PR against the kubernetes-sigs upstream repository.
88
49
89
50
## Check the release on GitHub
90
51
91
52
Look at the release that was just published and validate that the release has the appropriate assets. The assets should include the following:
92
53
93
54
```
94
-
authenticator_0.5.2_checksums.txt
95
-
aws-iam-authenticator-0.5.2.tar.gz
96
-
aws-iam-authenticator-0.5.2.zip
97
-
aws-iam-authenticator_0.5.2_darwin_amd64
98
-
aws-iam-authenticator_0.5.2_linux_amd64
99
-
aws-iam-authenticator_0.5.2_windows_amd64.exe
55
+
authenticator_0.6.26_checksums.txt
56
+
aws-iam-authenticator_0.6.26_darwin_amd64
57
+
aws-iam-authenticator_0.6.26_darwin_arm64
58
+
aws-iam-authenticator_0.6.26_linux_amd64
59
+
aws-iam-authenticator_0.6.26_linux_arm64
60
+
aws-iam-authenticator_0.6.26_linux_ppc64le
61
+
aws-iam-authenticator_0.6.26_linux_s390x
62
+
aws-iam-authenticator_0.6.26_windows_amd64.exe
100
63
Source code (zip)
101
64
Source code (tar.gz)
102
65
```
103
66
104
-
Check the ECR registry to make sure that the images were published. Finally, edit the release text to match previous releases, by copying the changelog text and adding the container image links. The format of the release text should be similar to the following:
105
-
106
-
````
107
-
## Changelog
108
-
109
-
* Added partition flag ([#341](https://github.com/kubernetes-sigs/aws-iam-authenticator/pull/341), @micahhausler)
110
-
* Update link to Kops docs site ([#338](https://github.com/kubernetes-sigs/aws-iam-authenticator/pull/338), @rifelpet)
111
-
* Security Improvements on the example yaml ([#335](https://github.com/kubernetes-sigs/aws-iam-authenticator/pull/335), @pjbgf)
112
-
* Fix RBAC on example file: service account requires get to ConfigMap ([#334](https://github.com/kubernetes-sigs/aws-iam-authenticator/pull/334), @pjbgf)
113
-
* Add AccessKeyID as variable for username ([#337](https://github.com/kubernetes-sigs/aws-iam-authenticator/pull/337), @pjbgf)
114
-
* Added server side AWS account ID log redaction ([#327](https://github.com/kubernetes-sigs/aws-iam-authenticator/pull/327), @micahhausler)
115
-
116
-
## Docker Images
117
-
118
-
Note: You must log in with the registry ID and your role must have the necessary ECR privileges:
0 commit comments