Skip to content

feat(platform): switch dbs to argocd - #65

Merged
vitramir merged 2 commits into
mainfrom
noa/issue-64
Mar 10, 2026
Merged

feat(platform): switch dbs to argocd#65
vitramir merged 2 commits into
mainfrom
noa/issue-64

Conversation

@casey-brooks

Copy link
Copy Markdown
Contributor

Summary

  • replace platform, litellm, and agent-state DB StatefulSets/Services with postgres-helm Argo CD applications
  • add postgres chart version variable and include DB apps in outputs/health checks
  • refresh platform README and tfvars example for DB app deployment details

Testing

  • NIXPKGS_ALLOW_UNFREE=1 nix shell --impure nixpkgs#terraform -c terraform fmt -recursive
  • NIXPKGS_ALLOW_UNFREE=1 nix shell --impure nixpkgs#terraform -c terraform -chdir=stacks/platform init -input=false
  • NIXPKGS_ALLOW_UNFREE=1 nix shell --impure nixpkgs#terraform -c terraform -chdir=stacks/platform validate

Closes #64

@casey-brooks
casey-brooks requested a review from a team as a code owner March 10, 2026 01:30
@casey-brooks

Copy link
Copy Markdown
Contributor Author

Test & Lint Summary

  • Lint: NIXPKGS_ALLOW_UNFREE=1 nix shell --impure nixpkgs#terraform -c terraform fmt -recursive (no errors)
  • Tests:
    • NIXPKGS_ALLOW_UNFREE=1 nix shell --impure nixpkgs#terraform -c terraform -chdir=stacks/platform init -input=false
    • NIXPKGS_ALLOW_UNFREE=1 nix shell --impure nixpkgs#terraform -c terraform -chdir=stacks/platform validate
    • Result: 1 passed, 0 failed, 0 skipped

noa-lucent
noa-lucent previously approved these changes Mar 10, 2026

@noa-lucent noa-lucent left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Clean migration from Terraform-managed StatefulSets to ArgoCD-managed Helm applications. The PR correctly addresses all acceptance criteria from #64:

  • All three DB StatefulSets/Services removed and replaced with argocd_application resources using oci://ghcr.io/agynio/charts/postgres-helm.
  • Service DNS names preserved via fullnameOverride.
  • wait = true + 5m timeouts for ordering guarantees.
  • prune = false + self_heal = true for stateful safety.
  • Downstream depends_on updated to reference new ArgoCD apps.
  • Health checks, outputs, docs, and tfvars example updated consistently.

Left one minor comment about documenting the intentional divergence from the dynamic "automated" pattern. No major issues.

Comment thread stacks/platform/main.tf
@casey-brooks

Copy link
Copy Markdown
Contributor Author

Test & Lint Summary (update)

  • Lint: NIXPKGS_ALLOW_UNFREE=1 nix shell --impure nixpkgs#terraform -c terraform fmt -recursive (no errors)
  • Tests:
    • NIXPKGS_ALLOW_UNFREE=1 nix shell --impure nixpkgs#terraform -c terraform -chdir=stacks/platform init -input=false
    • NIXPKGS_ALLOW_UNFREE=1 nix shell --impure nixpkgs#terraform -c terraform -chdir=stacks/platform validate
    • Result: 1 passed, 0 failed, 0 skipped

@noa-lucent noa-lucent left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verified: inline comments added above all three DB sync_policy blocks. Prior feedback resolved. LGTM.

@rowan-stein
rowan-stein requested a review from vitramir March 10, 2026 01:52
@vitramir
vitramir merged commit a323387 into main Mar 10, 2026
1 check 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.

Deploy Postgres DBs via Helm/ArgoCD applications (replace Terraform StatefulSets)

3 participants