From 5378664ff485b6c726e68c8c2c2ca265a5567e24 Mon Sep 17 00:00:00 2001 From: David Collom Date: Tue, 29 Apr 2025 16:07:40 +0100 Subject: [PATCH 1/6] Trigger Release v0.9.1-rc1 From fec6fa3004c6a1e9d4929f0b6b40676b0505f9fb Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 29 Apr 2025 15:08:21 +0000 Subject: [PATCH 2/6] Bump versions to v0.9.1-rc1 --- Makefile | 2 +- deploy/charts/version-checker/Chart.yaml | 4 ++-- deploy/charts/version-checker/README.md | 2 +- deploy/yaml/deploy.yaml | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 4aa48283..06e5ba8f 100644 --- a/Makefile +++ b/Makefile @@ -22,7 +22,7 @@ verify: test build ## tests and builds version-checker image: ## build docker image GOARCH=$(ARCH) GOOS=linux CGO_ENABLED=0 go build -o ./bin/version-checker-linux ./cmd/. - docker build -t quay.io/jetstack/version-checker:v0.9.0 . + docker build -t quay.io/jetstack/version-checker:v0.9.1-rc1 . clean: ## clean up created files rm -rf \ diff --git a/deploy/charts/version-checker/Chart.yaml b/deploy/charts/version-checker/Chart.yaml index b8ed9488..1f27d193 100644 --- a/deploy/charts/version-checker/Chart.yaml +++ b/deploy/charts/version-checker/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v2 -appVersion: "v0.9.0" -version: "v0.9.0" +appVersion: "v0.9.1-rc1" +version: "v0.9.1-rc1" description: A Helm chart for version-checker home: https://github.com/jetstack/version-checker name: version-checker diff --git a/deploy/charts/version-checker/README.md b/deploy/charts/version-checker/README.md index b09bf7cf..9f9ffb92 100644 --- a/deploy/charts/version-checker/README.md +++ b/deploy/charts/version-checker/README.md @@ -1,6 +1,6 @@ # version-checker -![Version: v0.9.0](https://img.shields.io/badge/Version-v0.9.0-informational?style=flat-square) ![AppVersion: v0.9.0](https://img.shields.io/badge/AppVersion-v0.9.0-informational?style=flat-square) +![Version: v0.9.1-rc1](https://img.shields.io/badge/Version-v0.9.1--rc1-informational?style=flat-square) ![AppVersion: v0.9.1-rc1](https://img.shields.io/badge/AppVersion-v0.9.1--rc1-informational?style=flat-square) A Helm chart for version-checker diff --git a/deploy/yaml/deploy.yaml b/deploy/yaml/deploy.yaml index 3a777990..e6f11561 100644 --- a/deploy/yaml/deploy.yaml +++ b/deploy/yaml/deploy.yaml @@ -50,7 +50,7 @@ spec: spec: serviceAccountName: version-checker containers: - - image: quay.io/jetstack/version-checker:v0.9.0 + - image: quay.io/jetstack/version-checker:v0.9.1-rc1 imagePullPolicy: Always ports: - containerPort: 8080 From 7e87c580cfdfec2bba910349867855a3ed594614 Mon Sep 17 00:00:00 2001 From: David Collom Date: Tue, 29 Apr 2025 16:23:17 +0100 Subject: [PATCH 3/6] Attempt to resolve workflow issues --- .github/workflows/release.yaml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index d00d4848..80b5b83f 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -23,6 +23,8 @@ jobs: steps: - name: Checkout code uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + with: + fetch-depth: 0 - name: Setup Golang uses: actions/setup-go@v5 @@ -87,7 +89,7 @@ jobs: git config --local user.email "github-actions[bot]@users.noreply.github.com" git config --local user.name "github-actions[bot]" git status - git commit -a -m "Bump versions to ${{steps.release_number.outputs.substring}} " + git commit -a -m "Bump versions to ${{steps.release_number.outputs.substring}}" - name: Push changes if: steps.filter.outputs.versions == 'true' @@ -122,6 +124,8 @@ jobs: steps: - name: Checkout code uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + with: + path: version-checker - name: Setup Cosign uses: sigstore/cosign-installer@main @@ -136,8 +140,6 @@ jobs: - name: Setup Helm uses: azure/setup-helm@v4 - with: - token: ${{ github.token }} - name: Login to Quay.io run: echo "${{ secrets.QUAY_ROBOT_TOKEN }}" | helm registry login quay.io -u ${{ secrets.QUAY_USERNAME }} --password-stdin @@ -152,7 +154,6 @@ jobs: --bundle jetstack-charts/charts/version-checker-${{steps.release_number.outputs.substring}}.tgz.cosign.bundle - name: Creating PR - if: startsWith(github.ref, 'refs/tags/') uses: peter-evans/create-pull-request@v7 with: token: ${{ secrets.JETSTACK_CHARTS_PAT }} @@ -169,8 +170,9 @@ jobs: draft: ${{ !startsWith(github.ref, 'refs/tags/') }} - name: Push to Quay + if: startsWith(github.ref, 'refs/tags/') run: |- - helm push jetstack-charts/charts/version-checker-${{ github.ref_name }}.tgz oci://quay.io/quay.io/jetstack/version-checker/chart + helm push jetstack-charts/charts/version-checker-${{ steps.release_number.outputs.substring }}.tgz oci://quay.io/quay.io/jetstack/version-checker/chart docker-release: runs-on: ubuntu-latest From 10af3ef85d020e7753c3a71e00dccedaf1b9fff2 Mon Sep 17 00:00:00 2001 From: David Collom Date: Tue, 29 Apr 2025 16:32:26 +0100 Subject: [PATCH 4/6] Simplify release name/number generation into one job --- .github/workflows/release.yaml | 46 ++++++++++++++++++++++------------ 1 file changed, 30 insertions(+), 16 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 80b5b83f..275e58f0 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -12,9 +12,22 @@ concurrency: cancel-in-progress: true jobs: + release-name: + runs-on: ubuntu-latest + outputs: + name: ${{ steps.release_number.outputs.substring }} + steps: + - uses: bhowell2/github-substring-action@1.0.2 + id: release_number + with: + value: ${{github.ref_name}} + index_of_str: "release-" + prepare-release: # Don't push back to a tag! if: ${{ !startsWith(github.ref, 'refs/tags/') }} + needs: + - release-name name: Prepare release runs-on: ubuntu-latest permissions: @@ -31,17 +44,11 @@ jobs: with: go-version-file: go.mod - - uses: bhowell2/github-substring-action@1.0.2 - id: release_number - with: - value: ${{github.ref_name}} - index_of_str: "release-" - - name: Find and Replace Helm Chart Version uses: jacobtomlinson/gha-find-replace@v3 with: find: 'v(\d+)\.(\d+)\.(\d+)(-rc(\d)+)?' - replace: "${{steps.release_number.outputs.substring}}" + replace: "${{needs.release-name.outputs.name}}" include: "deploy/charts/version-checker/Chart.yaml" regex: true @@ -49,7 +56,7 @@ jobs: uses: jacobtomlinson/gha-find-replace@v3 with: find: 'v(\d+)\.(\d+)\.(\d+)(-rc(\d)+)?' - replace: "${{steps.release_number.outputs.substring}}" + replace: "${{needs.release-name.outputs.name}}" include: "deploy/yaml/deploy.yaml" regex: true @@ -57,7 +64,7 @@ jobs: uses: jacobtomlinson/gha-find-replace@v3 with: find: 'v(\d+)\.(\d+)\.(\d+)(-rc(\d)+)?' - replace: "${{steps.release_number.outputs.substring}}" + replace: "${{needs.release-name.outputs.name}}" include: "Makefile" regex: true @@ -89,7 +96,7 @@ jobs: git config --local user.email "github-actions[bot]@users.noreply.github.com" git config --local user.name "github-actions[bot]" git status - git commit -a -m "Bump versions to ${{steps.release_number.outputs.substring}}" + git commit -a -m "Bump versions to ${{needs.release-name.outputs.name}}" - name: Push changes if: steps.filter.outputs.versions == 'true' @@ -107,7 +114,7 @@ jobs: with: github_token: ${{ secrets.GITHUB_TOKEN }} target_branch: main - title: "Release ${{steps.release_number.outputs.substring}}" + title: "Release ${{needs.release-name.outputs.name}}" body: |- "**Automated Release Pull Request** @@ -121,6 +128,8 @@ jobs: runs-on: ubuntu-latest permissions: id-token: write + needs: + - release-name steps: - name: Checkout code uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 @@ -142,6 +151,7 @@ jobs: uses: azure/setup-helm@v4 - name: Login to Quay.io + if: startsWith(github.ref, 'refs/tags/') run: echo "${{ secrets.QUAY_ROBOT_TOKEN }}" | helm registry login quay.io -u ${{ secrets.QUAY_USERNAME }} --password-stdin - name: package helm chart @@ -150,15 +160,15 @@ jobs: - name: Sign Helm Chart run: | - cosign sign-blob -y jetstack-charts/charts/version-checker-${{steps.release_number.outputs.substring}}.tgz \ - --bundle jetstack-charts/charts/version-checker-${{steps.release_number.outputs.substring}}.tgz.cosign.bundle + cosign sign-blob -y jetstack-charts/charts/version-checker-${{needs.release-name.outputs.name}}.tgz \ + --bundle jetstack-charts/charts/version-checker-${{needs.release-name.outputs.name}}.tgz.cosign.bundle - name: Creating PR uses: peter-evans/create-pull-request@v7 with: token: ${{ secrets.JETSTACK_CHARTS_PAT }} - title: "Release version-checker ${{github.ref_name }}" - commit-message: "Release version-checker ${{github.ref_name }}" + title: "Release version-checker ${{needs.release-name.outputs.name }}" + commit-message: "Release version-checker ${{needs.release-name.outputs.name }}" branch: version-checker/${{github.ref_name}} path: jetstack-charts add-paths: | @@ -172,12 +182,14 @@ jobs: - name: Push to Quay if: startsWith(github.ref, 'refs/tags/') run: |- - helm push jetstack-charts/charts/version-checker-${{ steps.release_number.outputs.substring }}.tgz oci://quay.io/quay.io/jetstack/version-checker/chart + helm push jetstack-charts/charts/version-checker-${{ needs.release-name.outputs.name }}.tgz oci://quay.io/quay.io/jetstack/version-checker/chart:${{needs.release-name.outputs.name}} docker-release: runs-on: ubuntu-latest permissions: id-token: write + needs: + - release-name steps: - name: Checkout code uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 @@ -239,6 +251,8 @@ jobs: permissions: contents: write runs-on: ubuntu-latest + needs: + - release-name steps: - name: Create Release / Change Logs uses: softprops/action-gh-release@v2 From 69115038ec9e980e2b10ef8b5e28ce2be17720ca Mon Sep 17 00:00:00 2001 From: David Collom Date: Tue, 29 Apr 2025 16:35:57 +0100 Subject: [PATCH 5/6] Don't Push to charts unless its a full 'tag' release --- .github/workflows/release.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 275e58f0..d3710bd1 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -160,16 +160,17 @@ jobs: - name: Sign Helm Chart run: | - cosign sign-blob -y jetstack-charts/charts/version-checker-${{needs.release-name.outputs.name}}.tgz \ - --bundle jetstack-charts/charts/version-checker-${{needs.release-name.outputs.name}}.tgz.cosign.bundle + cosign sign-blob -y jetstack-charts/charts/version-checker-${{ needs.release-name.outputs.name }}.tgz \ + --bundle jetstack-charts/charts/version-checker-${{ needs.release-name.outputs.name }}.tgz.cosign.bundle - name: Creating PR uses: peter-evans/create-pull-request@v7 + if: ${{ startsWith(github.ref, 'refs/tags/') }} with: token: ${{ secrets.JETSTACK_CHARTS_PAT }} - title: "Release version-checker ${{needs.release-name.outputs.name }}" - commit-message: "Release version-checker ${{needs.release-name.outputs.name }}" - branch: version-checker/${{github.ref_name}} + title: "Release version-checker ${{ needs.release-name.outputs.name }}" + commit-message: "Release version-checker ${{ needs.release-name.outputs.name }}" + branch: version-checker/${{ github.ref_name }} path: jetstack-charts add-paths: | charts/*.tgz @@ -177,7 +178,6 @@ jobs: delete-branch: true signoff: true base: main - draft: ${{ !startsWith(github.ref, 'refs/tags/') }} - name: Push to Quay if: startsWith(github.ref, 'refs/tags/') From 71f9bcca7f4c86c5e51f68acf2fe1aad4446b000 Mon Sep 17 00:00:00 2001 From: David Collom Date: Tue, 29 Apr 2025 16:41:05 +0100 Subject: [PATCH 6/6] Fix up PR Body from " and give PR creation for helm release a better title --- .github/workflows/release.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index d3710bd1..850fab41 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -13,6 +13,7 @@ concurrency: jobs: release-name: + name: Generate a clean release name from the branch/tag runs-on: ubuntu-latest outputs: name: ${{ steps.release_number.outputs.substring }} @@ -116,7 +117,7 @@ jobs: target_branch: main title: "Release ${{needs.release-name.outputs.name}}" body: |- - "**Automated Release Pull Request** + **Automated Release Pull Request** ## Change log: ${{steps.github_release.outputs.changelog}} @@ -163,7 +164,7 @@ jobs: cosign sign-blob -y jetstack-charts/charts/version-checker-${{ needs.release-name.outputs.name }}.tgz \ --bundle jetstack-charts/charts/version-checker-${{ needs.release-name.outputs.name }}.tgz.cosign.bundle - - name: Creating PR + - name: Creating Publishing Chart's PR uses: peter-evans/create-pull-request@v7 if: ${{ startsWith(github.ref, 'refs/tags/') }} with: