From 0b56a689cb7ba275a300afb2fb7deca0ad530ffa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Pi=C4=85tkowski?= Date: Wed, 15 Jul 2026 10:17:09 +0200 Subject: [PATCH 1/2] fix(workflows): stop gitsemver install from building double-v download URL MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Renovate fills the install-binary-action `version:` field with the v-prefixed release tag (e.g. `v2.0.1`), but the gitsemver `download_url` template hardcoded another `v` (`v${version}`). The two combined into `.../download/vv2.0.1/gitsemver-vv2.0.1-linux-amd64.tar.gz`, which 404s and breaks the Create Release workflow for every consumer. Make the template consume the `v` from `${version}` (matching the neighbouring architect install block) and keep the value `v`-prefixed, so it resolves correctly and survives future Renovate bumps. This supersedes the temporary fix in eaec78f, which set the value bare and would re-break on the next Renovate bump. Refs giantswarm/giantswarm#37171 Co-Authored-By: Claude Opus 4.8 Signed-off-by: Łukasz Piątkowski --- .github/workflows/create-release-pr.yaml | 4 ++-- .github/workflows/create-release.yaml | 12 ++++++------ CHANGELOG.md | 6 ++++++ 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/.github/workflows/create-release-pr.yaml b/.github/workflows/create-release-pr.yaml index 8db1f64..e0a909f 100644 --- a/.github/workflows/create-release-pr.yaml +++ b/.github/workflows/create-release-pr.yaml @@ -77,8 +77,8 @@ jobs: with: binary: "gitsemver" # renovate: datasource=github-releases depName=giantswarm/gitsemver - version: 2.0.1 - download_url: "https://github.com/giantswarm/${binary}/releases/download/v${version}/${binary}-v${version}-linux-amd64.tar.gz" + version: v2.0.1 + download_url: "https://github.com/giantswarm/${binary}/releases/download/${version}/${binary}-${version}-linux-amd64.tar.gz" tarball_binary_path: "*/${binary}" smoke_test: "${binary} --version" diff --git a/.github/workflows/create-release.yaml b/.github/workflows/create-release.yaml index cd062fe..f130f7c 100644 --- a/.github/workflows/create-release.yaml +++ b/.github/workflows/create-release.yaml @@ -45,8 +45,8 @@ jobs: with: binary: "gitsemver" # renovate: datasource=github-releases depName=giantswarm/gitsemver - version: 2.0.1 - download_url: "https://github.com/giantswarm/${binary}/releases/download/v${version}/${binary}-v${version}-linux-amd64.tar.gz" + version: v2.0.1 + download_url: "https://github.com/giantswarm/${binary}/releases/download/${version}/${binary}-${version}-linux-amd64.tar.gz" tarball_binary_path: "*/${binary}" smoke_test: "${binary} --version" - name: Get version @@ -115,8 +115,8 @@ jobs: with: binary: "gitsemver" # renovate: datasource=github-releases depName=giantswarm/gitsemver - version: 2.0.1 - download_url: "https://github.com/giantswarm/${binary}/releases/download/v${version}/${binary}-v${version}-linux-amd64.tar.gz" + version: v2.0.1 + download_url: "https://github.com/giantswarm/${binary}/releases/download/${version}/${binary}-${version}-linux-amd64.tar.gz" tarball_binary_path: "*/${binary}" smoke_test: "${binary} --version" - name: Update project.go @@ -366,8 +366,8 @@ jobs: with: binary: "gitsemver" # renovate: datasource=github-releases depName=giantswarm/gitsemver - version: 2.0.1 - download_url: "https://github.com/giantswarm/${binary}/releases/download/v${version}/${binary}-v${version}-linux-amd64.tar.gz" + version: v2.0.1 + download_url: "https://github.com/giantswarm/${binary}/releases/download/${version}/${binary}-${version}-linux-amd64.tar.gz" tarball_binary_path: "*/${binary}" smoke_test: "${binary} --version" - name: Set up Go ${{ env.GO_VERSION }} diff --git a/CHANGELOG.md b/CHANGELOG.md index 853e3ed..b5041c4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), however this project does not use Semantic Versioning and there are no releases. Instead this file uses a date-based structure. +## 2026-07-15 + +### Fixed + +- `create-release.yaml` / `create-release-pr.yaml` — the `install-binary-action` step that installs `gitsemver` no longer builds a double-`v` download URL (e.g. `.../download/vv2.0.1/gitsemver-vv2.0.1-...`), which 404'd and broke the Create Release workflow for consumers. The `download_url` template hardcoded a `v` (`v${version}`), but Renovate fills the `version:` field with the `v`-prefixed release tag (`v2.0.1`), so the prefix was applied twice. The template now consumes the `v` from `${version}` (matching the neighbouring `architect` install block), so the value stays `v`-prefixed and survives future Renovate bumps. Reported in giantswarm/giantswarm#37171. + ## 2026-07-14 ### Changed From d83e259b98f87fc99c7af07f9c61dec77dfc8668 Mon Sep 17 00:00:00 2001 From: piontec Date: Thu, 16 Jul 2026 09:47:26 +0200 Subject: [PATCH 2/2] Update CHANGELOG.md Co-authored-by: Zach Stone --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b5041c4..f8cf03f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,7 +10,7 @@ Instead this file uses a date-based structure. ### Fixed -- `create-release.yaml` / `create-release-pr.yaml` — the `install-binary-action` step that installs `gitsemver` no longer builds a double-`v` download URL (e.g. `.../download/vv2.0.1/gitsemver-vv2.0.1-...`), which 404'd and broke the Create Release workflow for consumers. The `download_url` template hardcoded a `v` (`v${version}`), but Renovate fills the `version:` field with the `v`-prefixed release tag (`v2.0.1`), so the prefix was applied twice. The template now consumes the `v` from `${version}` (matching the neighbouring `architect` install block), so the value stays `v`-prefixed and survives future Renovate bumps. Reported in giantswarm/giantswarm#37171. +- `create-release.yaml` / `create-release-pr.yaml` — fix a bug in the `install-binary-action` step that resulted in a double-`v` prefix in the `gitsemver` version. ## 2026-07-14