Onboard 5 secrets to Salt pillar pipeline #45
No reviewers
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
forgejo_admin/pal-e-platform!45
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "44-onboard-keycloak-paledocs-secrets-to-sal"
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?
Summary
salt/pillar/secrets/platform.sls(keycloak, paledocs DB, slack webhook, telegram bot token, telegram chat ID)TF_SECRET_VARSin Makefile (10 → 15 secrets)secrets_registry.sls## Secrets Architecturesection to README documenting the full pipelineChanges
salt/pillar/secrets/platform.sls— 5 new GPG-encrypted secret blockssalt/pillar/secrets_registry.sls— 5 new metadata entries with origin, rotation, notesMakefile—TF_SECRET_VARSexpanded from 10 to 15 entriesREADME.md— New Secrets Architecture section (pipeline diagram, components table, adding-a-secret procedure, GPG key info, current secret count)Terraform Changes
No infrastructure changes. This PR only affects the secrets rendering pipeline:
make tofu-secretswill now render 15 vars instead of 10make tofu-plan/make tofu-applyno longer require manual-varflagsTest Plan
make tofu-secretscompletes without error (requiressudo -vfirst)grep -c '=' terraform/secrets.auto.tfvarsreturns 15make tofu-plansucceeds with no missing variable errorsReview Checklist
81A03D1CF874DC90TF_SECRET_VARSmatches variable names invariables.tfDiscovered Scope
TF_VAR_*env vars — separate issueRelated
sop-secrets-management— the public SOPCloses #44
🤖 Generated with Claude Code
PR #45 Review
BLOCKERS
woodpecker_api_tokenregistry entry. This PR adds a GPG block forwoodpecker_api_tokentosalt/pillar/secrets/platform.sls(line 145-164), but there is no corresponding metadata entry insalt/pillar/secrets_registry.sls. Every other secret in the pillar has a registry entry. The registry tracks origin, rotation schedule, and notes -- omitting this breaks the "Adding a New Secret" procedure documented in the README (step 4). Add awoodpecker_api_tokenentry to theplatform:section ofsecrets_registry.sls.NITS
PR title/body count mismatch. The title says "Onboard 5 secrets" and the body lists keycloak, paledocs DB, slack webhook, telegram bot token, telegram chat ID. But the diff actually adds 6 GPG blocks to
platform.sls-- the 6th beingwoodpecker_api_token, which was previously inTF_SECRET_VARSandvariables.tfbut had no encrypted value in the pillar. Consider updating the title/body to say "6 secrets" or at minimum noting thewoodpecker_api_tokengap fix in the Changes section.README categorization could be more precise. "Platform (12)" lumps
woodpecker_api_token(a CI concern) in with infrastructure secrets. Not blocking, but a note like "Platform/CI (12)" or splitting CI out would be clearer. Minor.SOP COMPLIANCE
44-onboard-keycloak-paledocs-secrets-to-salreferences #44)Closes #44present in PR bodyplan-pal-e-platform(the parent plan)81A03D1CF874DC90(verified via encoded key ID prefix)TF_SECRET_VARSin Makefile (15 entries) matchesvariables.tfdeclarations (15 variable blocks, excludingwoodpecker_agent_secretwhich is Salt-only)terraform/secrets.auto.tfvarsis gitignored via*.tfvarspattern in.gitignoreVERDICT: NOT APPROVED
One blocker:
woodpecker_api_tokenneeds a registry entry insecrets_registry.slsto match every other secret in the pipeline. Fix that and this is ready to merge.