Skip to content

R6: static-binary packaging + remote-relay deploy docs#5

Merged
bodaay merged 1 commit into
mainfrom
feat/r6-packaging
May 19, 2026
Merged

R6: static-binary packaging + remote-relay deploy docs#5
bodaay merged 1 commit into
mainfrom
feat/r6-packaging

Conversation

@bodaay

@bodaay bodaay commented May 19, 2026

Copy link
Copy Markdown
Contributor

beacon milestone R6 — packaging & deploy

The final beacon milestone: package the relay as a static binary and
document deploying a remote relay.

Added

  • Makefilemake build produces a static (CGO_ENABLED=0),
    -trimpath, version-stamped binary in dist/; cross-compiles via
    GOOS/GOARCH. make check runs the same gates as CI
    (fmt/vet/test/lint).
  • deploy/beacon.service — a hardened systemd unit: unprivileged
    beacon service account, ProtectSystem=strict and a full sandbox.
    beacon holds no database and writes nothing at runtime, so it needs
    no write access.
  • docs/DEPLOY.md — end-to-end remote-relay guide: build, host
    prep, CSR-over-SSH enrolment, installing the unit, the inbound-only
    firewall surface (--client-addr for caravel, --tunnel-addr for
    helm), verification, and cert rotation.

The embedded relay needs no deployment — helm runs it in-process
(docs/HELM-INTEGRATION.md).

Quality

gofmt / go vet / go test -race / golangci-lint clean. Verified
make build yields a working version-stamped binary.

Milestone status

With this, R1–R6 are all complete — skeleton, transparent proxy,
embedded + remote transports, relay enrolment, and packaging.

Completes beacon R6.

- Makefile: `make build` produces a static (CGO_ENABLED=0), trimmed,
  version-stamped binary in dist/; cross-compiles via GOOS/GOARCH.
  `make check` mirrors the CI quality gates.
- deploy/beacon.service: a hardened systemd unit for a remote relay —
  unprivileged service account, strict sandbox (beacon holds no
  database and writes nothing at runtime).
- docs/DEPLOY.md: end-to-end guide for a remote relay — build, host
  prep, CSR-over-SSH enrolment, the unit, the inbound-only firewall
  surface, and cert rotation.

The embedded relay needs no deployment; helm runs it in-process.

Signed-off-by: Khalefa <Khalefa@alahmad.org>
@bodaay bodaay merged commit 52bc3ad into main May 19, 2026
1 of 2 checks passed
@bodaay bodaay deleted the feat/r6-packaging branch May 19, 2026 20:47
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