[Phase 0] Deploy External Secrets Operator (ESO) via Flux to activate rapidapi-proxy-secret ExternalSecrets #61
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?
Background
The three placeholder files
flux/zip-enrichment/externalsecret.yaml,flux/holidays/externalsecret.yaml, andflux/air-quality/externalsecret.yamlcontain commented-outExternalSecretmanifests that reference aClusterSecretStore. These will auto-syncrapidapi-proxy-secretfrom a secrets backend (e.g., Vault or Kubernetes secret store) once the External Secrets Operator is running in the cluster.Currently, the secrets are created manually per
docs/secrets-checklist.md#10. ESO is the long-term managed solution that removes the manual step.What to do
HelmReleasefor ESO influx/external-secrets/using the official Helm chart (external-secrets/external-secrets).ClusterSecretStorepointing at the chosen backend (start with the Kubernetes provider using a dedicated service account — simplest to stand up, no extra infrastructure).ExternalSecretmanifests in each API namespace directory.external-secretsdirectory toflux/kustomization.yaml.kustomize build flux/passes.Acceptance criteria
flux get helmreleases -n external-secretsshowsREADY=Truekubectl get externalsecrets -Ashows all threerapidapi-proxy-secretExternalSecrets asSecretSyncedkubectl create secretstep from secrets-checklist item 10 is no longer required (but keep as fallback note)kustomize build flux/= PASSDependencies
✅ Implemented — PR #65 merged.
Created
flux/external-secrets/with:namespace.yaml— external-secrets namespacehelmrepository.yaml— charts.external-secrets.io HelmRepositoryhelmrelease.yaml— ESO HelmRelease (external-secrets/external-secrets >=0.9.0 <1.0.0) with CRD install/upgradeclustersecretstore.yaml— ClusterSecretStore using Kubernetes provider (ServiceAccount + ClusterRole + ClusterRoleBinding + ClusterSecretStore)kustomization.yamlUncommented and completed all three ExternalSecret manifests:
flux/zip-enrichment/externalsecret.yamlflux/holidays/externalsecret.yamlflux/air-quality/externalsecret.yamlAdded
external-secretstoflux/kustomization.yaml.kustomize build flux/= PASS.Runtime acceptance (requires cluster): Once Flux reconciles, verify: