Skip to content

chore: harden the release pipeline and installers - #3

Merged
jwmoss merged 1 commit into
mainfrom
chore/harden-release-pipeline
Sep 12, 2026
Merged

jwmoss merged 1 commit into
mainfrom
chore/harden-release-pipeline

Conversation

@jwmoss

@jwmoss jwmoss commented Sep 12, 2026

Copy link
Copy Markdown
Member

Summary

Follow-ups from the 1.0.3 supply-chain security audit. No CLI behavior changes.

  • release.yml: drop WINGET_TOKEN (unused while skip_upload: true), add a non-cancelling concurrency group, document the contents: write scope.
  • ci.yml: cancel-in-progress concurrency group.
  • .goreleaser.yaml: remove the before: hooks test run from the credentialed job (CI already runs it), set mod_timestamp and use CommitDate for the build date.
  • dependabot.yml: 7-day cooldown for gomod, matching actions.
  • install.sh: --proto '=https' --proto-redir '=https' --tlsv1.2, exact checksum entry match via awk.
  • install.ps1: force TLS 1.2 on PowerShell 5.1, -UseBasicParsing, exact checksum match, and read/write the user PATH as REG_EXPAND_SZ so %VAR% entries survive.
  • SECURITY.md: reporting link, response window, supported versions, distribution note.

Test plan

  • shellcheck, shfmt, actionlint, zizmor --persona pedantic (4 informational: unnamed jobs, left as-is because branch protection keys on job ids)
  • goreleaser check and goreleaser release --snapshot --clean produce 6 archives; built: shows the commit date
  • install.ps1 parses under pwsh; PATH registry change not exercised on Windows

Drop the unused winget token from the release job, stop running tests
with release credentials, use commit timestamps for reproducible
builds, add workflow concurrency groups and a gomod cooldown, require
HTTPS and TLS 1.2 in the installers, preserve REG_EXPAND_SZ PATH
entries on Windows, and document the security reporting channel.
@jwmoss
jwmoss force-pushed the chore/harden-release-pipeline branch from f4096a6 to 924e078 Compare September 12, 2026 01:09
@jwmoss
jwmoss merged commit b88f763 into main Sep 12, 2026
2 checks passed
@jwmoss
jwmoss deleted the chore/harden-release-pipeline branch September 12, 2026 01:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant