Skip to content

Harden release archives and self-hosted deployment#43

Merged
peg merged 3 commits into
mainfrom
fix/release-deploy-hardening
May 23, 2026
Merged

Harden release archives and self-hosted deployment#43
peg merged 3 commits into
mainfrom
fix/release-deploy-hardening

Conversation

@peg

@peg peg commented May 23, 2026

Copy link
Copy Markdown
Owner

Summary

  • package release archives with a consistent snare binary name so install.sh extracts the expected executable
  • verify release archive shape in CI and add Go vet plus Worker tests to the release workflow
  • update release/Docker builds to Go 1.25.10 and refresh vulnerable Go dependencies reported by govulncheck
  • require SNARE_DASHBOARD_TOKEN in Docker Compose and document the self-hosted compose startup path
  • fix the Compose command so it correctly invokes the Docker image entrypoint as snare serve ...
  • add a Docker Compose smoke test to PR CI so self-hosted startup regressions are caught before merge
  • add a Docker build context ignore file and expose port 80 for HTTP-01/TLS self-hosting flows
  • make installer checksum verification fail clearly when no SHA-256 tool is available

Tests

  • go test ./... -race -count=1
  • go vet ./...
  • govulncheck ./...
  • npm test in worker/
  • sh -n install.sh
  • SNARE_DASHBOARD_TOKEN=0123456789abcdef0123456789abcdef docker compose config --quiet
  • SNARE_DASHBOARD_TOKEN=0123456789abcdef0123456789abcdef docker compose -p snare-pr43-test up -d --build followed by /health
  • release archive smoke test for snare_linux_amd64.tar.gz containing executable ./snare
  • Docker image build and /health check

@peg
peg force-pushed the fix/release-deploy-hardening branch from 30ef8f9 to 69fe6cb Compare May 23, 2026 02:51
@peg
peg merged commit 3b64af0 into main May 23, 2026
1 check passed
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