Skip to content

ci: migrate releases to shared pipeline - #65

Merged
steipete merged 1 commit into
mainfrom
chore/unified-release-pipeline
Jul 27, 2026
Merged

ci: migrate releases to shared pipeline#65
steipete merged 1 commit into
mainfrom
chore/unified-release-pipeline

Conversation

@steipete

Copy link
Copy Markdown
Contributor

Summary

Move crawlkit publication to the shared release-go-cli.yml@v1 pipeline and deliberately align its release assets with the fleet convention. Local publishing now refuses with the workflow-dispatch command, while snapshot and downloaded-asset verification remain diagnostic paths.

This is a breaking release-asset rename beginning with v0.14.4:

v0.14.3 asset v0.14.4 replacement
crawlctl-v0.14.3-macos-arm64.tar.gz crawlkit_0.14.4_darwin_arm64.tar.gz
crawlctl-v0.14.3-macos-arm64.tar.gz.sha256 entry in checksums.txt
crawlctl-v0.14.3-macos-x86_64.tar.gz crawlkit_0.14.4_darwin_amd64.tar.gz
crawlctl-v0.14.3-macos-x86_64.tar.gz.sha256 entry in checksums.txt
none crawlkit_0.14.4_linux_arm64.tar.gz
none crawlkit_0.14.4_linux_amd64.tar.gz

The archive prefix is crawlkit_ because the shared workflow's supported default and validation contract derive it from the repository name; there is no existing binary-name override, and this migration intentionally does not add one. The executable inside every archive remains crawlctl.

Linux amd64 and arm64 are enabled because crawlctl cross-builds cleanly with CGO_ENABLED=0 for both targets and has no blocking native dependency or build tag. There is no Homebrew handoff, universal Darwin archive, or nFPM packaging.

Proof

  • make check
  • actionlint
  • goreleaser check
  • goreleaser release --snapshot --clean --skip=publish,announce,validate
  • all four snapshot archive entries validated against dist/checksums.txt
  • Linux outputs inspected as static x86-64 and ARM aarch64 ELF executables
  • Codex autoreview completed with no accepted/actionable findings; its sole reported input-contract concern was rejected after checking the exact live release-workflows@v1 tag, which declares all used inputs

@steipete
steipete requested a review from a team as a code owner July 27, 2026 17:15
@steipete
steipete merged commit 7e1d015 into main Jul 27, 2026
7 checks passed
@steipete
steipete deleted the chore/unified-release-pipeline branch July 27, 2026 17:16
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