Skip to content

feat(meowbot): add Reloader annotation-surface plumbing to the Deployment - #2

Merged
Dotablaze merged 1 commit into
dotablaze-tech:mainfrom
jdwillmsen:feat/JDWLABS-310-reloader-annotation-meowbot
Aug 7, 2026
Merged

feat(meowbot): add Reloader annotation-surface plumbing to the Deployment#2
Dotablaze merged 1 commit into
dotablaze-tech:mainfrom
jdwillmsen:feat/JDWLABS-310-reloader-annotation-meowbot

Conversation

@jdwillmsen

Copy link
Copy Markdown
Contributor

Summary

JDWLABS-310 (follow-up to JDWLABS-291 / ADR 0016): charts/meowbot/templates/deployment.yaml only exposed podAnnotations, which lands on the pod template's metadata, not the Deployment object's own metadata. Stakater Reloader's secret.reloader.stakater.com/reload opt-in annotation must live on the Deployment itself, so the chart had no hook to reach it.

  • Added a deploymentAnnotations values hook to charts/meowbot/templates/deployment.yaml, rendered directly under the Deployment's top-level metadata (sibling of spec), separate from the existing pod-template podAnnotations block.
  • Set secret.reloader.stakater.com/reload in values-non.yaml and values-prd.yaml, listing the distinct Secret names each environment's Deployment reads via env[].valueFrom.secretKeyRef — re-verified live against the current chart rather than trusting the stale count from the original sweep:
    • non: meowbot-pg-non,meowbot-non
    • prd: meowbot-pg-prd,meowbot-prd
  • Bumped chart version (0.1.0 -> 0.2.0) for the template change.

Once Reloader is live cluster-wide (JDWLABS-291), these two Deployments (dotablaze-tech-meowbot-non / dotablaze-tech-meowbot-prd) will restart automatically on Vault-driven secret rotation instead of silently serving stale credentials.

Test plan

  • helm lint charts/meowbot — 0 chart(s) failed
  • helm template (via rtk proxy to avoid truncated output) for both values-non.yaml and values-prd.yaml — confirmed the annotation renders at .metadata.annotations on the Deployment, not .spec.template.metadata.annotations

podAnnotations only reaches the pod template's metadata, but Reloader's
secret.reloader.stakater.com/reload annotation must live on the
Deployment object's own metadata for the controller to see it. Add a
deploymentAnnotations values hook and set it in both env overrides,
listing each Deployment's distinct Secret names sourced via
env[].valueFrom.secretKeyRef.
@Dotablaze
Dotablaze merged commit ce33c02 into dotablaze-tech:main Aug 7, 2026
3 checks 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.

2 participants