From 4623775b93e8792f19a05719777420df9ff9f4b0 Mon Sep 17 00:00:00 2001 From: Victor Martinez Date: Mon, 1 Jul 2024 14:38:27 +0200 Subject: [PATCH 1/3] ci(release): update descriptions and use oblt-actions@v1 (#13529) (cherry picked from commit daf2ef90d90c64bc3c0cf13a833905fce81a45f5) # Conflicts: # .github/workflows/run-patch-release.yml # dev_docs/RELEASES.md --- .github/workflows/prepare-release/action.yml | 4 ++-- .github/workflows/run-minor-release.yml | 6 +++--- .github/workflows/run-patch-release.yml | 14 +++++++++++--- dev_docs/RELEASES.md | 14 ++++++++++++++ 4 files changed, 30 insertions(+), 8 deletions(-) diff --git a/.github/workflows/prepare-release/action.yml b/.github/workflows/prepare-release/action.yml index 2921d46bde9..ef312a3e038 100644 --- a/.github/workflows/prepare-release/action.yml +++ b/.github/workflows/prepare-release/action.yml @@ -32,7 +32,7 @@ runs: steps: - name: Send slack message when started id: slack-thread - uses: elastic/oblt-actions/slack/send@v1.8.0 + uses: elastic/oblt-actions/slack/send@v1 with: bot-token: ${{ inputs.slack-bot-token }} channel-id: ${{ env.SLACK_CHANNEL }} @@ -89,7 +89,7 @@ runs: TAG: 'refs/tags/v${{ steps.generate.outputs.release-version }}' - if: failure() - uses: elastic/oblt-actions/slack/send@v1.8.0 + uses: elastic/oblt-actions/slack/send@v1 with: bot-token: ${{ inputs.slack-bot-token }} channel-id: ${{ env.SLACK_CHANNEL }} diff --git a/.github/workflows/run-minor-release.yml b/.github/workflows/run-minor-release.yml index 5202d5119ff..ff15e0fc694 100644 --- a/.github/workflows/run-minor-release.yml +++ b/.github/workflows/run-minor-release.yml @@ -5,7 +5,7 @@ on: workflow_dispatch: inputs: version: - description: 'The version (semver format: major.minor.0)' + description: 'The new version to be set, normally the version in the main branch (semver format: major.minor.0)' required: true type: string @@ -67,9 +67,9 @@ jobs: # GitHub bot won't trigger any CI builds. # See https://github.com/peter-evans/create-pull-request/issues/48#issuecomment-537478081 - name: Configure git user - uses: elastic/apm-pipeline-library/.github/actions/setup-git@current + uses: elastic/oblt-actions/git/setup@v1 with: - token: ${{ env.GH_TOKEN }} + github-token: ${{ env.GH_TOKEN }} - name: Import GPG key uses: crazy-max/ghaction-import-gpg@01dd5d3ca463c7f10f7f4f7b4f177225ac661ee4 # v6.1.0 diff --git a/.github/workflows/run-patch-release.yml b/.github/workflows/run-patch-release.yml index b706fb92501..61c9375788a 100644 --- a/.github/workflows/run-patch-release.yml +++ b/.github/workflows/run-patch-release.yml @@ -5,7 +5,7 @@ on: workflow_dispatch: inputs: version: - description: 'The version (semver format: major.minor.patch)' + description: 'The current version to be released, normally the `FF version` (semver format: major.minor.patch)' required: true type: string @@ -60,9 +60,9 @@ jobs: # GitHub bot won't trigger any CI builds. # See https://github.com/peter-evans/create-pull-request/issues/48#issuecomment-537478081 - name: Configure git user - uses: elastic/apm-pipeline-library/.github/actions/setup-git@current + uses: elastic/oblt-actions/git/setup@v1 with: - token: ${{ env.GH_TOKEN }} + github-token: ${{ env.GH_TOKEN }} - name: Import GPG key uses: crazy-max/ghaction-import-gpg@01dd5d3ca463c7f10f7f4f7b4f177225ac661ee4 # v6.1.0 @@ -75,7 +75,11 @@ jobs: - run: make patch-release - if: success() +<<<<<<< HEAD uses: elastic/oblt-actions/slack/send@v1.8.0 +======= + uses: elastic/oblt-actions/slack/send@v1 +>>>>>>> daf2ef90d (ci(release): update descriptions and use oblt-actions@v1 (#13529)) with: bot-token: ${{ secrets.SLACK_BOT_TOKEN }} channel-id: ${{ env.SLACK_CHANNEL }} @@ -85,7 +89,11 @@ jobs: thread-timestamp: ${{ needs.prepare.outputs.slack-thread || '' }} - if: failure() +<<<<<<< HEAD uses: elastic/oblt-actions/slack/send@v1.8.0 +======= + uses: elastic/oblt-actions/slack/send@v1 +>>>>>>> daf2ef90d (ci(release): update descriptions and use oblt-actions@v1 (#13529)) with: bot-token: ${{ secrets.SLACK_BOT_TOKEN }} channel-id: ${{ env.SLACK_CHANNEL }} diff --git a/dev_docs/RELEASES.md b/dev_docs/RELEASES.md index 776f6918b4b..3f8b126ff1d 100644 --- a/dev_docs/RELEASES.md +++ b/dev_docs/RELEASES.md @@ -25,6 +25,7 @@ For patch releases, only the version on the existing major and minor version bra ## Day after Feature Freeze +<<<<<<< HEAD * For minor releases, cut a new release branch from `main` and update them. * Release branch: Update versions and ensure that the `BEATS_VERSION` in the Makefile is updated, @@ -37,6 +38,19 @@ For patch releases, only the version on the existing major and minor version bra and update versions to next minor version, e.g. [#2804](https://github.com/elastic/apm-server/pull/2804). The release manager will ping the teams, but you can already prepare this in advance on the day after Feature Freeze. +======= +* Trigger release workflow manually + * For **patch releases**: run the [`run-patch-release`](https://github.com/elastic/apm-server/actions/workflows/run-patch-release.yml) workflow (In "Use workflow from", select `main` branch. Then in "The version", specify the **upcoming** patch release version - es: on `8.14.2` feature freeze you will use `8.14.2`). + This workflow will: create the release branch; update version across codebase; commit and create PR targeting the release branch. + Release notes for patch releases **must be manually added**: + * Add a new section to the existing release notes file ([Sample PR](https://github.com/elastic/apm-server/pull/12680)). + * Review the [changelogs/head](https://github.com/elastic/apm-server/tree/main/changelogs/head.asciidoc) file and move relevant changelog entries from `head.asciidoc` to `release_version.asciidoc` if the change is backported to release_version. If changes do not apply to the version being released, keep them in the `head.asciidoc` file. + * Review the commits in the release to ensure all changes are reflected in the release notes. + * Add your PR to the documentation release issue ([Sample Issue](https://github.com/elastic/dev/issues/2485)). + * For **minor releases**: run the [`run-minor-release`](https://github.com/elastic/apm-server/actions/workflows/run-minor-release.yml) workflow (In "Use workflow from", select `main` branch. Then in "The version", specify the minor release version the release is for). + This workflow will: create the release branch; update the changelog for the release branch and open a PR targeting the release branch titled `.: update docs`; create a PR on `main` titled `.: update docs, mergify, versions and changelogs`. Before merging them compare commits between latest minor and the new minor versions and ensure all relevant PRs have been included in the Changelog. If not, amend it in both PRs. Request and wait a PR review from the team before merging. +* The Release Manager will ping the team to align the release process +>>>>>>> daf2ef90d (ci(release): update descriptions and use oblt-actions@v1 (#13529)) * Update dependencies From ce31d4caa83bb22e49c6e32e4d9c5785ac7c9cd4 Mon Sep 17 00:00:00 2001 From: Victor Martinez Date: Mon, 1 Jul 2024 15:36:42 +0200 Subject: [PATCH 2/3] Apply suggestions from code review --- .github/workflows/run-patch-release.yml | 7 ------- dev_docs/RELEASES.md | 3 --- 2 files changed, 10 deletions(-) diff --git a/.github/workflows/run-patch-release.yml b/.github/workflows/run-patch-release.yml index 61c9375788a..7bace460a37 100644 --- a/.github/workflows/run-patch-release.yml +++ b/.github/workflows/run-patch-release.yml @@ -76,10 +76,7 @@ jobs: - if: success() <<<<<<< HEAD - uses: elastic/oblt-actions/slack/send@v1.8.0 -======= uses: elastic/oblt-actions/slack/send@v1 ->>>>>>> daf2ef90d (ci(release): update descriptions and use oblt-actions@v1 (#13529)) with: bot-token: ${{ secrets.SLACK_BOT_TOKEN }} channel-id: ${{ env.SLACK_CHANNEL }} @@ -89,11 +86,7 @@ jobs: thread-timestamp: ${{ needs.prepare.outputs.slack-thread || '' }} - if: failure() -<<<<<<< HEAD - uses: elastic/oblt-actions/slack/send@v1.8.0 -======= uses: elastic/oblt-actions/slack/send@v1 ->>>>>>> daf2ef90d (ci(release): update descriptions and use oblt-actions@v1 (#13529)) with: bot-token: ${{ secrets.SLACK_BOT_TOKEN }} channel-id: ${{ env.SLACK_CHANNEL }} diff --git a/dev_docs/RELEASES.md b/dev_docs/RELEASES.md index 3f8b126ff1d..51b7944cde6 100644 --- a/dev_docs/RELEASES.md +++ b/dev_docs/RELEASES.md @@ -25,7 +25,6 @@ For patch releases, only the version on the existing major and minor version bra ## Day after Feature Freeze -<<<<<<< HEAD * For minor releases, cut a new release branch from `main` and update them. * Release branch: Update versions and ensure that the `BEATS_VERSION` in the Makefile is updated, @@ -38,7 +37,6 @@ For patch releases, only the version on the existing major and minor version bra and update versions to next minor version, e.g. [#2804](https://github.com/elastic/apm-server/pull/2804). The release manager will ping the teams, but you can already prepare this in advance on the day after Feature Freeze. -======= * Trigger release workflow manually * For **patch releases**: run the [`run-patch-release`](https://github.com/elastic/apm-server/actions/workflows/run-patch-release.yml) workflow (In "Use workflow from", select `main` branch. Then in "The version", specify the **upcoming** patch release version - es: on `8.14.2` feature freeze you will use `8.14.2`). This workflow will: create the release branch; update version across codebase; commit and create PR targeting the release branch. @@ -50,7 +48,6 @@ For patch releases, only the version on the existing major and minor version bra * For **minor releases**: run the [`run-minor-release`](https://github.com/elastic/apm-server/actions/workflows/run-minor-release.yml) workflow (In "Use workflow from", select `main` branch. Then in "The version", specify the minor release version the release is for). This workflow will: create the release branch; update the changelog for the release branch and open a PR targeting the release branch titled `.: update docs`; create a PR on `main` titled `.: update docs, mergify, versions and changelogs`. Before merging them compare commits between latest minor and the new minor versions and ensure all relevant PRs have been included in the Changelog. If not, amend it in both PRs. Request and wait a PR review from the team before merging. * The Release Manager will ping the team to align the release process ->>>>>>> daf2ef90d (ci(release): update descriptions and use oblt-actions@v1 (#13529)) * Update dependencies From 35b94c8a6dd5bf31e126bcdf1eac6c429bd6e316 Mon Sep 17 00:00:00 2001 From: Victor Martinez Date: Mon, 1 Jul 2024 15:37:09 +0200 Subject: [PATCH 3/3] Apply suggestions from code review --- .github/workflows/run-patch-release.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/run-patch-release.yml b/.github/workflows/run-patch-release.yml index 7bace460a37..818481fbd5c 100644 --- a/.github/workflows/run-patch-release.yml +++ b/.github/workflows/run-patch-release.yml @@ -75,7 +75,6 @@ jobs: - run: make patch-release - if: success() -<<<<<<< HEAD uses: elastic/oblt-actions/slack/send@v1 with: bot-token: ${{ secrets.SLACK_BOT_TOKEN }}