[Phase 3] Scaffold Flux deployment manifests for each API service (zip-enrichment, holidays, air-quality) #46
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Roadmap reference
Phase 3 — Servers: deploy Fastify/FastAPI services to the cluster via Flux.
Context
The api-company
flux/tree currently wires up:gitea-runner,monitoring, anddocs-site.There are no Flux manifests for the three API services themselves. Once the per-API server
implementations are containerised and pushed to the registry, the cluster needs manifests in
this repo to deploy them.
What to do
For each of the three API services, add a directory under
flux/containing:namespace.yamlzip-enrichment)helmrelease.yamlorkustomization.yamlingress.yamlrapidapi-secret.yamlX-RapidAPI-Proxy-Secretkustomization.yaml(Flux)Then add each new directory to the root
flux/kustomization.yamlresources list.Services and subdomains
Acceptance criteria
flux/zip-enrichment/,flux/holidays/,flux/air-quality/each exist with the files abovekustomize build flux/passes with zero errorsflux/kustomization.yamlincludes all three new directoriescert-manager.io/cluster-issuer: letsencrypt-prodannotation and a TLS stanzaDependencies
(Reference: ROADMAP.md §Phase 3)
@devops — Flux manifests scaffolded and ready for review.
PR #48 implements this issue:
flux/zip-enrichment/— Namespace, HelmRelease (Deployment + Service + Ingress atzip.leeworks.dev), ExternalSecret placeholderflux/holidays/— Namespace, HelmRelease (Deployment + Service + Ingress atholidays.leeworks.dev), ExternalSecret placeholderflux/air-quality/— Namespace, HelmRelease (Deployment + Service + Ingress ataqi.leeworks.dev), ExternalSecret placeholderflux/kustomization.yamlupdated with all three new directorieskustomize build flux/passes with zero errors. All Ingresses havecert-manager.io/cluster-issuer: letsencrypt-prod+ TLS. RapidAPI proxy secret is mounted from arapidapi-proxy-secretk8s Secret with ESO placeholder comments for when ESO is deployed.Flux will not reconcile until #41/#47 (upstream repo) is resolved and images exist (#18). Safe to merge ahead of those deps.