From 9511d46a83e75b92b90f1e5d96143f23efff2602 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 1 Feb 2024 10:36:59 +0000 Subject: [PATCH 1/3] Reuse release-drafter-workflow from js-sdk Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-drafter.yml | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/.github/workflows/release-drafter.yml b/.github/workflows/release-drafter.yml index 4d889f4561..7d490eebdf 100644 --- a/.github/workflows/release-drafter.yml +++ b/.github/workflows/release-drafter.yml @@ -2,20 +2,10 @@ name: Release Drafter on: push: branches: [staging] - workflow_dispatch: - inputs: - previous-version: - description: What release to use as a base for release note purposes - required: false - type: string + workflow_dispatch: {} concurrency: ${{ github.workflow }} jobs: draft: - runs-on: ubuntu-latest - steps: - - uses: release-drafter/release-drafter@e64b19c4c46173209ed9f2e5a2f4ca7de89a0e86 # v5 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - disable-autolabeler: true - previous-version: ${{ inputs.previous-version }} + uses: matrix-org/matrix-js-sdk/.github/workflows/release-drafter-action.yml@develop + with: + include-changes: matrix-react-sdk From 1162820af9ea6ab935d277ec1e2e7662f9d42cd2 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 1 Feb 2024 10:42:14 +0000 Subject: [PATCH 2/3] Delint Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- .github/workflows/release-drafter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-drafter.yml b/.github/workflows/release-drafter.yml index 7d490eebdf..f5602338b3 100644 --- a/.github/workflows/release-drafter.yml +++ b/.github/workflows/release-drafter.yml @@ -6,6 +6,6 @@ on: concurrency: ${{ github.workflow }} jobs: draft: - uses: matrix-org/matrix-js-sdk/.github/workflows/release-drafter-action.yml@develop + uses: matrix-org/matrix-js-sdk/.github/workflows/release-drafter-workflow.yml@develop with: include-changes: matrix-react-sdk From fcec34f4e7c28c1a5a053001b835c504ca18b689 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 1 Feb 2024 10:47:38 +0000 Subject: [PATCH 3/3] Update docs Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- docs/release.md | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/docs/release.md b/docs/release.md index 9dad7bc1bb..bf84325d55 100644 --- a/docs/release.md +++ b/docs/release.md @@ -186,33 +186,35 @@ this means that any commit which goes to `staging` will eventually make its way Shortly after concluding the preparation stage (or pushing any changes to `staging` in general); a draft release will be automatically made on the 4 project repositories with suggested changelogs and version numbers. -Review the draft releases created, check the version number makes sense and that the changelog contains everything you'd expect to. - _Note: we should add a step here to write summaries atop the changelogs manually, or via AI_ +Publishing the SDKs to npm also commits a dependency upgrade to the relevant downstream projects, +if you skip a layer of this release (e.g. for a hotfix) then the dependency will remain on `#develop` which will be +switched back to the version of the dependency from the master branch to not leak develop code into a release. + ### Matrix JS SDK -The first stop is the matrix-js-sdk; kick off a release using [the automation](https://github.com/matrix-org/matrix-js-sdk/actions/workflows/release.yml) - making sure to select the right type of release. For anything other than an RC: choose final. You should not need to ever switch off either of the Publishing options. - -- [ ] matrix-js-sdk has been released & published to npm +- [ ] Check the draft release which has been generated by [the automation](https://github.com/matrix-org/matrix-js-sdk/actions/workflows/release-drafter.yml) +- [ ] Make any changes to the release notes in the draft release as are necessary - **Do not click publish, only save draft** +- [ ] Kick off a release using [the automation](https://github.com/matrix-org/matrix-js-sdk/actions/workflows/release.yml) - making sure to select the right type of release. For anything other than an RC: choose final. You should not need to ever switch off either of the Publishing options. ### Matrix React SDK -The next stop is matrix-react-sdk; kick off a release using [the automation](https://github.com/matrix-org/matrix-react-sdk/actions/workflows/release.yml) - making sure to select the right type of release. For anything other than an RC: choose final. In the JS SDK version field enter the version of the JS SDK you wish to use, for typical releases including all the layers this would be the version released in the stage above. - -- [ ] matrix-react-sdk has been released & published to npm +- [ ] Check the draft release which has been generated by [the automation](https://github.com/matrix-org/matrix-react-sdk/actions/workflows/release-drafter.yml) +- [ ] Make any changes to the release notes in the draft release as are necessary - **Do not click publish, only save draft** +- [ ] Kick off a release using [the automation](https://github.com/matrix-org/matrix-react-sdk/actions/workflows/release.yml) - making sure to select the right type of release. For anything other than an RC: choose final. You should not need to ever switch off either of the Publishing options. ### Element Web -The next stop is element-web; kick off a release using [the automation](https://github.com/element-hq/element-web/actions/workflows/release.yml) - making sure to select the right type of release. For anything other than an RC: choose final. In the SDK version fields enter the versions you wish to use, for typical releases including all the layers this would be the versions released in the stages above. - -- [ ] Element Web has been released +- [ ] Check the draft release which has been generated by [the automation](https://github.com/element-hq/element-web/actions/workflows/release-drafter.yml) +- [ ] Make any changes to the release notes in the draft release as are necessary - **Do not click publish, only save draft** +- [ ] Kick off a release using [the automation](https://github.com/element-hq/element-web/actions/workflows/release.yml) - making sure to select the right type of release. For anything other than an RC: choose final. You should not need to ever switch off either of the Publishing options. ### Element Desktop -The next stop is element-desktop; kick off a release using [the automation](https://github.com/element-hq/element-desktop/actions/workflows/release.yml) - making sure to select the right type of release. For anything other than an RC: choose final. In the JS SDK version field enter the version of the JS SDK you wish to use, for typical releases including all the layers this would be the version released in the stage above. - -- [ ] Element Desktop has been released +- [ ] Check the draft release which has been generated by [the automation](https://github.com/element-hq/element-desktop/actions/workflows/release-drafter.yml) +- [ ] Make any changes to the release notes in the draft release as are necessary - **Do not click publish, only save draft** +- [ ] Kick off a release using [the automation](https://github.com/element-hq/element-desktop/actions/workflows/release.yml) - making sure to select the right type of release. For anything other than an RC: choose final. You should not need to ever switch off either of the Publishing options. # Deploying