-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #23710 from ashley-cui/relp
Update Release Process
- Loading branch information
Showing
1 changed file
with
24 additions
and
55 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -235,16 +235,6 @@ spelled with complete minutiae. | |
|
||
1. Return to the Cirrus-CI Build page for the new release tag, confirm | ||
(or wait for) it to complete, re-running any failed tasks as appropriate. | ||
1. For anything other than an RC, the release artifacts need to be published along | ||
with the release. These can be built locally using: | ||
|
||
```shell | ||
$ git checkout vX.Y.Z | ||
$ make release-artifacts | ||
``` | ||
|
||
1. In the directory where you downloaded the archives, run | ||
`sha256sum *.tar.gz *.zip > shasums` to generate SHA sums. | ||
1. Go to `https://github.com/containers/podman/releases/tag/vX.Y.Z` and | ||
press the "Edit Release" button. Change the name to the form `vX.Y.Z` | ||
1. If this is a release candidate be certain to click the pre-release | ||
|
@@ -253,66 +243,44 @@ spelled with complete minutiae. | |
click the latest release checkbox at the bottom of the page. | ||
1. Copy and paste the release notes for the release into the body of | ||
the release. | ||
1. Near the bottom of the page there is a box with the message | ||
“Add binaries by dropping them here or selecting them”. Use | ||
that to upload the artifacts in the `release/` dir generated earlier, | ||
as well as the two Mac pkginstallers: | ||
|
||
* podman-remote-release-darwin_amd64.zip | ||
* podman-remote-release-darwin_arm64.zip | ||
* podman-remote-release-windows_amd64.zip | ||
* podman-vX.Y.Z.msi | ||
* podman-remote-static-linux_amd64.tar.gz | ||
* podman-remote-static-linux_arm64.tar.gz | ||
* podman-installer-macos-amd64.pkg | ||
* podman-installer-macos-arm64.pkg | ||
* shasums | ||
|
||
1. Click the Publish button to make the release (or pre-release) | ||
available. | ||
1. Check the "Actions" tab, after the publish you should see a job | ||
automatically launch to build the Windows installer and the Mac Installer (named after | ||
the release). There may be more than one running due to the multiple | ||
1. For all releases, including RC's, artifacts should be published. The | ||
release-artifacts, upload-win-installer, and mac-pkg GitHub Actions | ||
should automatically take care of building, signing, and uploading artifacts. | ||
Check the "Actions" tab, after publishing you should see the jobs running. | ||
There may be more than one running due to the multiple | ||
event states triggered, but this can be ignored, as any duplicates | ||
will gracefully back-off. The job takes 5-6 minutes to complete. | ||
1. Confirm the podman-[version]-setup.exe file is now on the release | ||
page. This might not be the case if you accidentally published the | ||
release before uploading the binaries, as the job may look before | ||
they are available. If that happens, you can either manually kick | ||
off the job (see below), or just make a harmless edit to the | ||
release (e.g. add an extra whitespace character somewhere). As | ||
long as the body content is different in some way, a new run will | ||
be triggered. | ||
|
||
## Manually Triggering Windows Installer Build & Upload | ||
Please note that the Windows action depends onthe artifact action, and will be | ||
triggered after the artifact action succeeds. | ||
|
||
### *CLI Approach* | ||
1. Install the [GitHub CLI](https://github.com/cli/cli#installation) | ||
1. Run (replacing below version number to release version) | ||
``` | ||
gh workflow run "Upload Windows Installer" -F version="v4.2.0" | ||
``` | ||
### *GUI Approach* | ||
1. Go to the "Actions" tab | ||
1. On the left pick the "Update Windows Installer" category | ||
1. A blue box will appear above the job list with a right side drop | ||
-down. Click the drop-down and specify the version number in the | ||
dialog that appears | ||
|
||
## Manually Triggering Mac Installer Build & Upload | ||
If any of these actions are somehow not triggered, you can manually trigger them | ||
|
||
### *CLI Approach* | ||
1. Install the [GitHub CLI](https://github.com/cli/cli#installation) | ||
1. Run (replacing below version number to release version) | ||
``` | ||
gh workflow run "Sign and Upload Mac Installer" -F version="v4.2.0" | ||
gh workflow run "ACTION NAME" -F version="vX.Y.Z" | ||
``` | ||
### *GUI Approach* | ||
1. Go to the "Actions" tab | ||
1. On the left pick the "Sign and Upload Mac Installer" category | ||
1. On the left pick the required action to be triggered. | ||
1. A blue box will appear above the job list with a right side drop | ||
-down. Click the drop-down and specify the version number in the | ||
dialog that appears. | ||
dialog that appears | ||
1. Check that all following artifacts are now attached to the release | ||
* podman-remote-release-darwin_amd64.zip | ||
* podman-remote-release-darwin_arm64.zip | ||
* podman-remote-release-windows_amd64.zip | ||
* podman-vX.Y.Z.msi | ||
* podman-remote-static-linux_amd64.tar.gz | ||
* podman-remote-static-linux_arm64.tar.gz | ||
* podman-installer-macos-amd64.pkg | ||
* podman-installer-macos-arm64.pkg | ||
* podman-5.2.1-setup.exe | ||
* shasums | ||
1. Update Cirrus-CI cron job list | ||
1. After any Major or significant minor (esp. `-rhel`) releases, it's critical to | ||
|
@@ -342,7 +310,8 @@ spelled with complete minutiae. | |
Highlight key features and important changes or fixes. Link to the GitHub release. | ||
Make sure the blog post is properly tagged with the Announcement, Release, and Podman tags, | ||
and any other appropriate tags. | ||
1. For all releases, including patch releases and RC's, send an email to the [podman](mailto:[email protected]) and [podman-desktop](mailto:[email protected]) mailing lists. | ||
1. For all releases, including patch releases and RC's, send an email to the [podman](mailto:[email protected]) and [podman-desktop](mailto:[email protected]) mailing lists. This should be automated by the release-artifacts | ||
action, but it's best to keep and eye on it to see if the email went through to the lists. | ||
Link the to release blog and GitHub release. | ||
1. Update [LATEST_VERSION](https://github.com/containers/podman.io/blob/main/static/data/global.ts) on the Podman.io website. | ||
1. Tweet the release. Make a Mastodon post about the release. | ||
|