From f63e0af3cc896a73a2e39a4bc7205f72666d0dfc Mon Sep 17 00:00:00 2001 From: Kate Goldenring Date: Wed, 21 Aug 2024 16:31:29 -0400 Subject: [PATCH 1/2] Add release process document Signed-off-by: Kate Goldenring --- release-process.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 release-process.md diff --git a/release-process.md b/release-process.md new file mode 100644 index 0000000..dfee954 --- /dev/null +++ b/release-process.md @@ -0,0 +1,32 @@ +# Cutting a new release of the Spin MQTT trigger plugin + +To cut a new release of the MQTT trigger plugin, you will need to do the following: + +1. Confirm that [CI is green](https://github.com/spinkube/spin-trigger-mqtt/actions) for the commit selected to be tagged and released. + +2. Change the version number in [Cargo.toml](./Cargo.toml) and [spin-pluginify.toml](./spin-pluginify.toml) and run `cargo build --release`. + +3. Create a pull request with these changes and merge once approved. + +4. Checkout the commit with the version bump from above. + +5. Create and push a new tag with a `v` and then the version number. + + As an example, via the `git` CLI: + + ``` + # Create a GPG-signed and annotated tag + git tag -s -m "Spin MQTT Trigger v0.2.0" v0.2.0 + + # Push the tag to the remote corresponding to fermyon/spin-trigger-mqtt (here 'origin') + git push origin v0.2.0 + ``` + +6. Pushing the tag upstream will trigger the [release action](https://github.com/spinkube/spin-trigger-mqtt/actions/workflows/release.yml). + - The release build will create the packaged versions of the plugin, the updated plugin manifest and a checksums file + - These assets are uploaded to a new GitHub release for the pushed tag + - Release notes are auto-generated but edit as needed especially around breaking changes or other notable items + +7. Create a PR in the [fermyon/spin-plugins](https://github.com/fermyon/spin-plugins) repository with the [updated manifest](https://github.com/fermyon/spin-plugins/tree/main/manifests/mqtt-trigger). + +8. If applicable, create PR(s) or coordinate [documentation](https://github.com/fermyon/developer) needs, e.g. for new features or updated functionality. \ No newline at end of file From 901fb07653d08d9e2481f78111318f25b99210cd Mon Sep 17 00:00:00 2001 From: Brian Date: Wed, 21 Aug 2024 16:39:30 -0600 Subject: [PATCH 2/2] Update release-process.md Co-authored-by: Karthik Ganeshram --- release-process.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release-process.md b/release-process.md index dfee954..c4a1b27 100644 --- a/release-process.md +++ b/release-process.md @@ -18,7 +18,7 @@ To cut a new release of the MQTT trigger plugin, you will need to do the followi # Create a GPG-signed and annotated tag git tag -s -m "Spin MQTT Trigger v0.2.0" v0.2.0 - # Push the tag to the remote corresponding to fermyon/spin-trigger-mqtt (here 'origin') + # Push the tag to the remote corresponding to spinkube/spin-trigger-mqtt (here 'origin') git push origin v0.2.0 ```