Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Various release procedure fixes #406

Merged
merged 6 commits into from
Nov 17, 2023

Conversation

phisco
Copy link
Contributor

@phisco phisco commented Nov 16, 2023

Description of your changes

Improve release process according to feedback during release process for v1.14.2-up.1 with @Piotr1215.

I have:

  • Read and followed Upbound's contribution process.
  • Run make reviewable to ensure this PR is ready for review.
  • Added backport release-x.y labels to auto-backport this PR, as appropriate.

How has this code been tested

N.A.

Signed-off-by: Philippe Scorsolini <p.scorsolini@gmail.com>
Signed-off-by: Philippe Scorsolini <p.scorsolini@gmail.com>
Signed-off-by: Philippe Scorsolini <p.scorsolini@gmail.com>
Signed-off-by: Philippe Scorsolini <p.scorsolini@gmail.com>
Signed-off-by: Philippe Scorsolini <p.scorsolini@gmail.com>
@phisco phisco changed the title Dev/release procedure fixes Various release procedure fixes Nov 16, 2023
Copy link
Contributor

@Piotr1215 Piotr1215 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for introducing the changes @phisco , I've left a few non-blocking comments/suggestions.

.github/ISSUE_TEMPLATE/patch_release.md Show resolved Hide resolved
@@ -22,27 +22,31 @@ this issue for posterity. Assuming `vX.Y.Z-up.K` is being cut, after upstream
[crossplane/crossplane][upstream-xp] `vX.Y.Z` has been released
according to the declared schedule, you should have:

- [ ] Synced the `release-vX.Y` release branch in [upbound/crossplane][upbound-xp-fork], with upstream [crossplane/crossplane][upstream-xp] release branch, up to the `vX.Y.Z` tag, adding any required change specific to the fork, see [here][sync-xp-fork] for more details.
- [ ] Synced the `release-X.Y` release branch in [upbound/crossplane][upbound-xp-fork], with upstream [crossplane/crossplane][upstream-xp] release branch, up to the `vX.Y.Z` tag, adding any required change specific to the fork, see [here][sync-xp-fork] for more details.
- [ ] Tagged [upbound/crossplane][upbound-xp-fork] `vX.Y.Z-up.K` from the `release-X.Y` branch by:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we could add a warning to make sure that we are in the correct repo? I can remember I've ran a workflow on the wrong repo once. Similar warnings could be for other steps.
Something like:

Warning

Please make sure that you are in the [upbound/crossplane][upbound-xp-fork] repo before running the workflows.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Every step would need a warning most probably 😅 we have to try to make it succinct but informative enough, hopefully automating it if possible down the line

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually! We could switch a lot of click steps to exact commands using gh! I know you are a fan of gh too, would you be interested into leading on that?

Copy link
Contributor

@Piotr1215 Piotr1215 Nov 16, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes! That's a great idea, the less we require from the release lead to type, the better!

.github/ISSUE_TEMPLATE/patch_release.md Show resolved Hide resolved
- [ ] Uses the correct image versions of `upbound/crossplane`, e.g. `kubectl -n upbound-system get pods -o yaml | grep image:`
- [ ] Installation of the following reference platforms works:
- [ ] Verify at least one of the above reference platforms works end to end by configuring and creating a claim, e.g. using https://github.com/upbound/platform-ref-gcp/blob/main/examples/cluster-claim.yaml:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want to include claim installation as well to further validate the installation? For the AWS provider it could pull from the URL, like so:

kubectl apply -f https://raw.githubusercontent.com/upbound/platform-ref-aws/main/examples/cluster-claim.yaml

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would make this and other suggestions part of a dedicated PR making the process more scripted as suggested above #406 (comment)

- install the current stable version: `up uxp install`
- install one of the above reference platforms
- upgrade to this new version as above: `helm -n upbound-system upgrade --install universal-crossplane <path-to-chart.tgz> --create-namespace`
- [ ] Run the [Promote workflow][promote-uxp] from the `release-X.Y` branch, to promote `vX.Y.Z-up.K` to `stable`, [here][uxp-stable-channel] you should find `universal-crossplane-X.Y.Z-up.K.tgz`. Verify everything is correctly working by running `up uxp install` against an empty Kubernetes cluster, e.g. `kind create cluster`, which should result in an healthy UXP installation with expected image versions.
- [ ] Created and published well authored release notes for [UXP][uxp-releases] `vX.Y.Z-up.K`. See the previous release for an example, these should at least:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- [ ] Created and published well authored release notes for [UXP][uxp-releases] `vX.Y.Z-up.K`. See the previous release for an example, these should at least:
- [ ] Once the release notes are ready, created and published well authored release notes for [UXP][uxp-releases] `vX.Y.Z-up.K`. See the previous release for an example, these should at least:

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tried rephrasing it, wdyt?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Most of the comments from the patch_release.md also apply to this file.

- [ ] Created and merged a PR to the `main` branch of [upbound/universal-crossplane][uxp] with the following changes:
- [ ] Update any reference to the old latest release to `vX.Y.0-up.1`, such as `CROSSPLANE_TAG` and `CROSSPLANE_COMMIT` in the `Makefile`.
- [ ] Update any reference to the old latest release to `vX.Y.Z-up.1`, such as `CROSSPLANE_TAG` and `CROSSPLANE_COMMIT` in the `Makefile`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe if we use variable, we could provide sed commands to be executed since the change is only done in the Makefile?

CONTRIBUTING.md Show resolved Hide resolved
Signed-off-by: Philippe Scorsolini <p.scorsolini@gmail.com>
@phisco phisco merged commit b7bd84d into upbound:main Nov 17, 2023
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants