Skip to content

feat: build a GHCR image and add swiss k8s manifests - #2

Merged
alleneubank merged 1 commit into
mainfrom
bb/k8s-ghcr
Oct 12, 2026
Merged

alleneubank merged 1 commit into
mainfrom
bb/k8s-ghcr

Conversation

@alleneubank

Copy link
Copy Markdown
Member

Moves supply.send.it from DigitalOcean App Platform to the swiss cluster (0xsend/infra#748).

  • .github/workflows/image.yml builds ghcr.io/0xsend/token-supply-api on push to main (tags sha-<commit>, latest); PRs build without pushing.
  • k8s/base: Deployment (uid 1000, restricted PSA, probes on /total), Service, nginx Ingress for supply.send.it (Cloudflare terminates TLS, like the rest of the fleet).
  • k8s/overlays/prod: namespace token-supply-prod, ExternalSecret token-supply-api from op-sendapp-prod (fields mainnet-rpc-url, base-rpc-url).

Order

  1. Merge this PR to produce the first image, then pin newTag in k8s/overlays/prod/kustomization.yaml to that sha-<commit> (placeholder now).
  2. Create the 1Password item token-supply-api in vault sendapp-prod.
  3. Merge the infra Flux wiring PR, verify in-cluster, then repoint DNS.

Verification

  • kubectl kustomize k8s/overlays/prod renders.
  • Image built locally and run as --user 1000:1000 --cap-drop ALL with public RPCs; /total, /circulating, /amounts.json, /multisigs matched https://supply.send.it byte-for-byte, and / returned 301 to https://www.send.it/.
  • Not verified: the GitHub Actions workflow itself (it runs on this PR), or the in-cluster rollout.

Builds ghcr.io/0xsend/token-supply-api on every push to main (tagged
sha-<commit> and latest) and adds a kustomize base plus a prod overlay
for the swiss cluster: Deployment (non-root, restricted PSA), Service,
nginx Ingress for supply.send.it, and an ExternalSecret for the RPC URLs.
Flux wiring lives in 0xsend/infra. The prod overlay's image tag is a
placeholder until the first main build exists.
@alleneubank
alleneubank marked this pull request as ready for review October 12, 2026 02:49
@alleneubank
alleneubank merged commit 87cd7cb into main Oct 12, 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