feat(argocd): enroll kadans-jobs — the Kadans analysis-jobs façade #35

Merged
arcodange merged 1 commits from arcodange/enroll-kadans-jobs into main 2026-07-20 09:07:45 +02:00
Owner

Enrolls kadans-jobs in ArgoCD — the tier-2 (homelab, 24/7) piece of the Kadans topology: a job queue plus the store of published analysis results, which decouples the product from the volatile Mac worker.

Follows the new-app runbook (Phase 4, ArgoCD part) and the dance-lessons-coach / kadans neighbours exactly:

  kadans-jobs:
    org: arcodange
    annotations:
      argocd-image-updater.argoproj.io/image-list: kadans-jobs=gitea.arcodange.lab/arcodange/kadans-jobs:latest
      argocd-image-updater.argoproj.io/kadans-jobs.update-strategy: digest
  • org: arcodange — the repo is not under the default arcodange-org.
  • The image is already in the registry (dockerimage.yaml shipped, Phase 8 done).
  • The cluster-wide ImageUpdater CR (namePattern: "*", useAnnotations: true, from #34) picks these annotations up — no per-app CR to add.

Degraded mode, on purpose

No postgres/iac/terraform.tfvars entry. The façade runs a memory store in v0, so it needs neither a database nor Vault. That is the runbook's degraded mode and it is our current target — the Postgres DB + role, the Vault JWT role (tools/) and the app's own iac/ will land together with the Postgres store, in the runbook's prescribed order.

Verification

helm lint argocd/                                  # 0 chart(s) failed
helm template argocd/ | grep -A24 "name: kadans-jobs"

Renders as expected: repoURLhttps://gitea.arcodange.lab/arcodange/kadans-jobs, path: chart, namespace: kadans-jobs, automated + prune + selfHeal + CreateNamespace=true, and both image-updater annotations.

The app's chart-alignment PR is kadans-jobs#1 (pi1, host kadans-jobs.arcodange.lab, websecure + letsencrypt + localIp@file), merged before this one.

Claude-Session: https://claude.ai/code/session_013ws8L74dVZmp97Wu36fm8j

Enrolls **kadans-jobs** in ArgoCD — the tier-2 (homelab, 24/7) piece of the Kadans topology: a job queue plus the store of published analysis results, which decouples the product from the volatile Mac worker. Follows the `new-app` runbook (Phase 4, ArgoCD part) and the `dance-lessons-coach` / `kadans` neighbours exactly: ```yaml kadans-jobs: org: arcodange annotations: argocd-image-updater.argoproj.io/image-list: kadans-jobs=gitea.arcodange.lab/arcodange/kadans-jobs:latest argocd-image-updater.argoproj.io/kadans-jobs.update-strategy: digest ``` - `org: arcodange` — the repo is **not** under the default `arcodange-org`. - The image is **already in the registry** (`dockerimage.yaml` shipped, Phase 8 done). - The cluster-wide `ImageUpdater` CR (`namePattern: "*"`, `useAnnotations: true`, from #34) picks these annotations up — **no per-app CR to add**. ## Degraded mode, on purpose **No `postgres/iac/terraform.tfvars` entry.** The façade runs a **memory store** in v0, so it needs neither a database nor Vault. That is the runbook's degraded mode and it is our current target — the Postgres DB + role, the Vault JWT role (`tools/`) and the app's own `iac/` will land **together with the Postgres store**, in the runbook's prescribed order. ## Verification ``` helm lint argocd/ # 0 chart(s) failed helm template argocd/ | grep -A24 "name: kadans-jobs" ``` Renders as expected: `repoURL` → `https://gitea.arcodange.lab/arcodange/kadans-jobs`, `path: chart`, `namespace: kadans-jobs`, `automated` + `prune` + `selfHeal` + `CreateNamespace=true`, and both image-updater annotations. The app's chart-alignment PR is [kadans-jobs#1](https://gitea.arcodange.lab/arcodange/kadans-jobs/pulls/1) (pi1, host `kadans-jobs.arcodange.lab`, websecure + letsencrypt + `localIp@file`), merged before this one. Claude-Session: https://claude.ai/code/session_013ws8L74dVZmp97Wu36fm8j
arcodange added 1 commit 2026-07-20 09:06:22 +02:00
kadans-jobs is the tier-2 (homelab, 24/7) piece of the Kadans topology: a job
queue plus the store of published analysis results, which decouples the product
from the volatile Mac worker. Its chart was just realigned on the new-app
runbook conventions (pi1, host kadans-jobs.arcodange.lab, websecure +
letsencrypt + localIp@file), so it is ready to be synced.

org: arcodange — the repo does not live under the default arcodange-org.
Digest-based image-updater annotations follow the fleet pattern; the
cluster-wide ImageUpdater CR (namePattern "*", useAnnotations) picks them up,
so there is no per-app CR to maintain. The image is already in the registry.

No postgres/iac/terraform.tfvars entry, on purpose: the façade runs a memory
store in v0, so it needs neither a database nor Vault. That is the runbook's
degraded mode and it is our current target — the DB, the Vault JWT role and the
app's own iac/ will land together with the Postgres store.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_013ws8L74dVZmp97Wu36fm8j
arcodange merged commit d3261bc8c4 into main 2026-07-20 09:07:45 +02:00
arcodange deleted branch arcodange/enroll-kadans-jobs 2026-07-20 09:07:47 +02:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: arcodange-org/factory#35