Skip to content

Commit

Permalink
Adding an issue template for cutting new releases
Browse files Browse the repository at this point in the history
Signed-off-by: Mark Rossetti <[email protected]>
  • Loading branch information
marosset committed Aug 22, 2023
1 parent 1f702d7 commit c18b8f7
Show file tree
Hide file tree
Showing 2 changed files with 66 additions and 1 deletion.
65 changes: 65 additions & 0 deletions .github/ISSUE_TEMPLATE/new-release.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
---
name: Cut a release
about: Create a tracking issue for a release cut
title: Cut v0.x.y release
labels: sig/windows
---

## Release Checklist

The release process is documented [HERE](../../RELEASE.md)!

- [ ] Create a new draft [release](https://github.com/kubernetes-sigs/windows-gmsa/releases/new)
- [ ] Create a new tag targeting `master`
- [ ] Generate release notes
- [ ] Set as pre-release (until images are promoted and helm charts updated)
- [ ] Publish the pre-release

- [ ] Promote the `admission-webhook` image
- [ ] Manually tag desired container image in the [staging registry](https://console.cloud.google.com/gcr/images/k8s-staging-gmsa-webhook/GLOBAL)
- [ ] Use `kpromo` to open a image promo PR

```bash
export GITHUB_TOKEN=<your github token>
kpromo pr --project gmsa-webhook --tag $VERSION --reviewers "@jayunit100 @jsturtevant @marosset" --fork {your github username}

```
- [ ] Verify the image is available using `docker pull registry.k8s.io/gmsa-webhook/k8s-gmsa-webhook:$VERSION`

- [ ] Update helm charts to use new image
- [ ] Update [Chart.yaml](../../charts/gmsa/Chart.yaml)
- [ ] Update `appVersion` to match the latest published container image
- [ ] Bump the `version` as appropriate
- [ ] Update [values.yaml](../../charts/gmsa/values.yaml)
- Update `image.tag` to match the latest published container image
- [ ] Build a helm package

```bash
helm package charts/gmsa --destination ./charts/repo
```
- [ ] Update the repo index

```bash
helm repo index charts/repo/
```

- [ ] Update the **IMAGE_NAME** variable in `admission_webhook/deploy/gmsa-webhook.sh` to use the latest image

- [ ] Update the release notes by adding the following template **to the top of the release notes**:

To deploy:

```bash
K8S_GMSA_DEPLOY_DOWNLOAD_REV='$VERSION' \
./deploy-gmsa-webhook.sh --file ./gmsa-manifests \
--image registry.k8s.io/gmsa-webhook/k8s-gmsa-webhook:$VERSION
```

- [ ] Update the release
- [ ] Unset `Set as pre-release`
- [ ] Set `Set as latest release`
- [ ] Update the release

- [ ] Send an announce email to `[email protected]` with the subject `[ANNOUNCE] Kubernetes SIG-Windows GMSA Webhook $VERSION is Released`

- [ ] Post new release in slack
2 changes: 1 addition & 1 deletion RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

The Kubernetes Windows GMSA project is released on an as-needed basis. The process is as follows:

1. An issue is created proposing a new release with a changelog since the last release
1. An issue is created proposing a new release with a changelog since the last release using the [Cut a release issue template](.github//ISSUE_TEMPLATE/new-release.md)
1. All [OWNERS](OWNERS) must LGTM this release issue
1. An OWNER runs `git tag -s $VERSION` from `master` branch and pushes the tag with `git push $VERSION`
1. An OWNER promotes the `gcr.io/k8s-staging-gmsa-webhook/k8s-gmsa-webhook` image built the tagged commit.
Expand Down

0 comments on commit c18b8f7

Please sign in to comment.