Merged
Conversation
Signed-off-by: Babak K. Shandiz <babakks@github.com>
Signed-off-by: Babak K. Shandiz <babakks@github.com>
Signed-off-by: Babak K. Shandiz <babakks@github.com>
Signed-off-by: Babak K. Shandiz <babakks@github.com>
Signed-off-by: Babak K. Shandiz <babakks@github.com>
Signed-off-by: Babak K. Shandiz <babakks@github.com>
Signed-off-by: Babak K. Shandiz <babakks@github.com>
Signed-off-by: Babak K. Shandiz <babakks@github.com>
Signed-off-by: Babak K. Shandiz <babakks@github.com>
Signed-off-by: Babak K. Shandiz <babakks@github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR upgrades GoReleaser from v1.17.1 to v2.13.1 to keep the release tooling current, as GoReleaser v1 reached end-of-life in May 2024. The upgrade involves updating the GitHub Actions workflow, configuration file syntax, and file path references that changed due to GoReleaser v2's modified artifact naming conventions.
Key changes:
- Updated GoReleaser Action to v6 and pinned GoReleaser version to v2.13.1
- Migrated
.goreleaser.ymlconfiguration to v2 format with deprecated field replacements - Updated artifact directory paths in deployment workflow and build scripts to match v2's naming scheme (e.g.,
arm64_v8.0suffix additions)
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
.github/workflows/deployment.yml |
Updated GoReleaser action to v6.0.0, pinned version to v2.13.1, and adjusted Windows build artifact paths to include architecture suffixes |
.goreleaser.yml |
Added version: 2, replaced deprecated fields (builds→ids, format→formats), quoted "386" architecture, removed rlcp, and added ids filter to nfpms |
script/pkgmacos |
Updated macOS ARM64 binary path to include _v8.0 suffix |
script/release |
Updated CLI flags from --skip-validate --skip-publish to --skip validate,publish,announce format |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
BagToad
approved these changes
Dec 19, 2025
Member
BagToad
left a comment
There was a problem hiding this comment.
LGTM, everything you are changing makes sense. Looking forward to a dry run of these changes.
tmeijn
pushed a commit
to tmeijn/dotfiles
that referenced
this pull request
Jan 17, 2026
This MR contains the following updates: | Package | Update | Change | |---|---|---| | [cli/cli](https://github.com/cli/cli) | minor | `v2.83.2` → `v2.85.0` | MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot). **Proposed changes to behavior should be submitted there as MRs.** --- ### Release Notes <details> <summary>cli/cli (cli/cli)</summary> ### [`v2.85.0`](https://github.com/cli/cli/releases/tag/v2.85.0): GitHub CLI 2.85.0 [Compare Source](cli/cli@v2.83.2...v2.85.0) #### What's Changed ##### ✨ Features - Add gh browse --actions flag by [@​rneatherway](https://github.com/rneatherway) in [#​12091](cli/cli#12091) - feat: allow git remote names in gh repo set-default by [@​majiayu000](https://github.com/majiayu000) in [#​12377](cli/cli#12377) ##### 🐛 Fixes - Fix Debian CLI package link in installation guide by [@​andyfeller](https://github.com/andyfeller) in [#​12291](cli/cli#12291) - fix: prevent panic when processing null project items by [@​chrishenzie](https://github.com/chrishenzie) in [#​12324](cli/cli#12324) ##### 📚 Docs & Chores - chore: upgrade to `cli/oauth@v1.2.1` by [@​babakks](https://github.com/babakks) in [#​12337](cli/cli#12337) - ci: upgrade to GoReleaser `v2` by [@​babakks](https://github.com/babakks) in [#​12318](cli/cli#12318) - CI: Update Azure Code Signing client to 1.0.95 by [@​BagToad](https://github.com/BagToad) in [#​12424](cli/cli#12424) - CI: Update Azure Code Signing endpoint URL by [@​BagToad](https://github.com/BagToad) in [#​12425](cli/cli#12425) - ci: tag per build job by [@​babakks](https://github.com/babakks) in [#​12428](cli/cli#12428) - CI: Add shell specification for temporary tag creation on Windows by [@​BagToad](https://github.com/BagToad) in [#​12429](cli/cli#12429) - Bump sigstore-go to v1.1.4 by [@​williammartin](https://github.com/williammartin) in [#​12289](cli/cli#12289) - Update actions/checkout to v6 in extension workflow templates by [@​fchimpan](https://github.com/fchimpan) in [#​12393](cli/cli#12393) - ci: enable noop linters by [@​babakks](https://github.com/babakks) in [#​12440](cli/cli#12440) #####Dependencies - chore(deps): bump golang.org/x/sync from 0.18.0 to 0.19.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12274](cli/cli#12274) - chore(deps): bump golang.org/x/text from 0.31.0 to 0.32.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12281](cli/cli#12281) - chore(deps): bump golang.org/x/term from 0.37.0 to 0.38.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12282](cli/cli#12282) - chore(deps): bump github.com/spf13/cobra from 1.10.1 to 1.10.2 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12255](cli/cli#12255) - chore(deps): bump github.com/gdamore/tcell/v2 from 2.13.1 to 2.13.2 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12262](cli/cli#12262) - chore(deps): bump golangci/golangci-lint-action from 9.1.0 to 9.2.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12252](cli/cli#12252) - chore(deps): bump github.com/gdamore/tcell/v2 from 2.13.2 to 2.13.4 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12302](cli/cli#12302) - chore(deps): bump golang.org/x/crypto from 0.45.0 to 0.46.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12300](cli/cli#12300) - chore(deps): bump actions/attest-build-provenance from 3.0.0 to 3.1.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12339](cli/cli#12339) - chore(deps): bump github.com/yuin/goldmark from 1.7.13 to 1.7.16 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12452](cli/cli#12452) #### New Contributors - [@​chrishenzie](https://github.com/chrishenzie) made their first contribution in [#​12324](cli/cli#12324) - [@​fchimpan](https://github.com/fchimpan) made their first contribution in [#​12393](cli/cli#12393) - [@​majiayu000](https://github.com/majiayu000) made their first contribution in [#​12377](cli/cli#12377) **Full Changelog**: <cli/cli@v2.83.2...v2.85.0> </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this MR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box --- This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi44MS4yIiwidXBkYXRlZEluVmVyIjoiNDIuODEuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUmVub3ZhdGUgQm90IiwiYXV0b21hdGlvbjpib3QtYXV0aG9yZWQiLCJkZXBlbmRlbmN5LXR5cGU6Om1pbm9yIl19-->
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #12319
This is a redo of #12277 where we asked Copilot to upgrade GoReleaser. I closed that due to lots of missing changes.
The reason for upgrading GoReleaser from
v1tov2, is that the latestv1release,v1.26.2, published back in May 2024, seems to be the last of its generation. Since it's a critical tool in our process, we should upgrade tov2. FWIW we're currently usingv1.17.1which is even older (April 2023).Important
Soon after merging this PR, I recommend us going through a dry-run release to make sure the changes are okay to keep. I tried to test them locally, but couldn't simulate a real environment, especially around artifact signing or default env vars available to GH runners.
Changes in this PR
Although almost all changes in this PR are mechanical, I'm going to explain them in detail as reviewing this PR might be challenging, and this way a fresh pair of eyes would spot potential misses easier.
1. CI workflow
goreleaser/goreleaser-actionis bumped tov6.v2.13.1(current latest) with a comment that we should be careful when bumping it due to artifact file name changes (more on this later).2. GoReleaser configuration
version: 2.archives.rclp: true, since it's now alwaystrue(notice).386in architecture name arrays.archives.buildswitharchives.ids(notice).archives.formatwitharchive.formatsarray (notice).idstonfpmsto limit generating.deb/.rpmpackages to our Linux binaries; without it GoReleaser attempts to make.deb/.rpmpackages for all builds. Since we only build for a single OS/arch in our process, this is merely for safety, especially in case we decided to consolidate GoReleaser builds into a single workflow job in the future.Tip
Running
goreleaser checkvalidates the configuration file.3. GoReleaser CLI
We call the
goreleaserCLI fromscript/releasescript. The new version has removed the--skip-validateand--skip-publishflags in favour of--skip validate,publishformat.I've also added
--skip announcejust for safety of local builds. FWIW this disables publishing any social media post/sharing.4. Generated files
As a bit of context, GoReleaser generates three kinds of artifacts/outputs for us, all stored under
distdirectory:bin/ghorbin/gh.exe..tar.gz(for Linux build) or.zip(for macOS/Windows). These archives contain the binary,LICENSE, andmanentries (except for Windows)..debor.rpmfiles generated for our Linux packaging.As I noted, only binary artifact directories have different names now, and this is how the PR accommodates the changes:
Linux builds: Thankfully, we don't rely on these directories, as all we need from our Linux builds are
.deband.rpmpackages, whose names are unchanged.Windows builds: previously directory names were like this:
But now they are:
We relied on these paths in our deployment workflow (passing them to Wix, the MSI installer maker), and they're now updated to the new names. However, as of GoReleaser docs, these directory names are not guaranteed to remain the same and we should find them by inspecting
dist/artifacts.json. I didn't go through that to avoid over-complicating this PR, but I did pinned the GoReleaser version tov2.13.1with a comment.Macos builds: previously directory names were:
Now they are:
We referenced thses names in
script/pkgmacosand now they're updated. Again we should use the paths reported indist/artifacts.json, but I didn't go through that.Note
Although some names have changed, but the contents are the same. For example, for
i386architecture, we've always relied on the default (i.e. sse2 floating point instructions). The only difference is now the directory names explicitly report the default value. The same applies forarm64_v8.0(e.g. see this in our latest release run whereGOARM64is populated withv8.0). For more about these env vars, See Go Wiki: Minimum Requirements.