Skip to content

dist: Scoop bucket for Windows - #63

Merged
ademboukabes merged 2 commits into
developfrom
dist/scoop-bucket-windows
Oct 13, 2026
Merged

ademboukabes merged 2 commits into
developfrom
dist/scoop-bucket-windows

Conversation

@ademboukabes

Copy link
Copy Markdown
Collaborator

Summary

Adds Scoop manifest generation and publication support for Windows distribution via GoReleaser v2, resolving #52.

Changes

  • GoReleaser configuration (.goreleaser.yaml):
    • Added scoops block targeting MicroClub-USTHB/scoop-bucket.
    • Configured multi-architecture support matching Windows archives (64bit and arm64 pointing to mctf.exe).
    • Implemented safe conditional upload (skip_upload: '{{ if index .Env "SCOOP_BUCKET_TOKEN" }}false{{ else }}true{{ end }}') to prevent missing secret errors during releases or local builds.
    • Secured existing HOMEBREW_TAP_TOKEN check using index for consistent resilience.
  • Release CI workflow (.github/workflows/release.yml):
    • Added SCOOP_BUCKET_TOKEN: ${{ secrets.SCOOP_BUCKET_TOKEN }} to GoReleaser environment.
  • Documentation:
    • README.md: Added Scoop installation commands under Install section and mentioned Scoop manifest in distribution list.
    • docs/RELEASING.md: Added one-time admin setup instructions for the Scoop bucket repo and secret.
    • docs/BACKLOG.md: Marked Scoop bucket distribution item as shipped.
    • docs/spec/CHANGELOG.md: Updated release notes to document Scoop manifest generation.

Verification

  • goreleaser check: Validated configuration without errors.
  • goreleaser release --snapshot --clean --skip=publish: Verified snapshot run successfully writes dist/scoop/mctf.json with valid 64bit and arm64 schemas.
  • Verified snapshot behavior both with and without tokens.
  • make lint (go vet, golangci-lint): 0 issues.
  • go test -race ./...: All tests pass.
  • ./mctf -C examples/sample-event validate: Passed.
  • ./mctf -C examples/sample-event generate --check: Passed.

Closes #52

Configure GoReleaser to publish a Scoop manifest to MicroClub-USTHB/scoop-bucket targeting Windows amd64 and arm64. Add conditional skip_upload to safely bypass publishing when SCOOP_BUCKET_TOKEN is not configured, matching the Homebrew tap setup. Pass SCOOP_BUCKET_TOKEN in GitHub Actions release workflow.
… BACKLOG

Document Scoop install commands in README.md under the Install section, add the one-time admin setup guide in docs/RELEASING.md, and mark the Scoop bucket task as shipped in docs/BACKLOG.md.
@ademboukabes
ademboukabes merged commit d25cc19 into develop Oct 13, 2026
3 checks passed
@ademboukabes
ademboukabes deleted the dist/scoop-bucket-windows branch October 13, 2026 19:49
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