Skip to content

k8s Secret manifest ships plaintext CHANGE_ME placeholders with no documented safe-apply workflow #455

Description

@Wilfred007

What

Document (and ideally enforce via tooling) a safe workflow for populating k8s/base/backend-secret.yaml so real secrets never get hand-typed into a manifest that could be accidentally committed, and evaluate External Secrets/Sealed Secrets for a longer-term fix.

Why

k8s/base/backend-secret.yaml currently ships plaintext CHANGE_ME placeholders for DATABASE_URL, JWT_SECRET, STELLAR_SECRET_KEY, ANCHOR_API_KEY, and SDS_API_KEY, intended to be hand-edited and then kubectl apply -f'd. There's no External Secrets Operator or Sealed Secrets integration, and no documented safeguard preventing a real value from ending up committed to git by mistake — notably including a real Stellar secret key.

Scope

In scope:

  • Add a clear k8s/README (or extend infrastructure/README.md) section documenting the safe workflow: never commit real values, use kubectl create secret from local env vars or a secrets manager, or template via CI secrets
  • Evaluate and, if adopted, wire up External Secrets Operator or Sealed Secrets so the committed manifest never contains real values even as placeholders in a way that invites hand-editing in place
  • Add a pre-commit or CI check that flags if backend-secret.yaml contains anything other than the placeholder values

Out of scope:

  • Migrating actual production secrets (that's an operational task for whoever runs the cluster)
  • Other k8s manifests unrelated to secrets

Acceptance Criteria

  • Documented, discoverable safe-apply workflow exists
  • A CI/pre-commit check exists that fails if backend-secret.yaml is committed with non-placeholder values
  • (If adopted) External Secrets/Sealed Secrets integration is wired and documented

Technical Context

  • k8s/base/backend-secret.yaml
  • infrastructure/README.md, charts/payd/values.yaml / values-production.yaml

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardThird CampaignCampaign: Third CampaigndevopsIssues related to infrastructure, CI/CD, and deploymentmediumModerate taskssecurityIssues related to application security and audits

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions