Create kustomize overlay in pal-e-deployments #2
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Type
Feature
Lineage
Standalone — scoped from westside-ai-assistant design spec (2026-03-28). Note: #1 (pal-e-services infra) creates the namespace and Harbor project. Both PRs can be developed in parallel but #1 must be applied first for ArgoCD sync and CI dry-run validation.
Repo
forgejo_admin/pal-e-deploymentsUser Story
As Marcus (admin)
I want the kustomize deployment overlay created
So that ArgoCD can deploy and manage the AI assistant pod
Context
Every service in the platform gets a kustomize overlay in pal-e-deployments. The westside-ai-assistant uses the standard base (Deployment, Service, health probes) with env var patches for its config. Secrets are injected using individual
env[].valueFrom.secretKeyRefentries (matching the basketball-api pattern). The overlay follows the exact same pattern as basketball-api/prod.File Targets
Files the agent should create:
overlays/westside-ai-assistant/prod/kustomization.yaml— reference standard base, image spec usingharbor.tail5b443a.ts.net/westside-ai-assistant/api, name/port patchesoverlays/westside-ai-assistant/prod/deployment-patch.yaml— env vars (BASKETBALL_API_URL, GROUPME_ALLOWED_GROUP_IDS, ANTHROPIC_MODEL, KEYCLOAK_REALM_URL, KEYCLOAK_CLIENT_ID as plain values) and secrets (ANTHROPIC_API_KEY, GROUPME_BOT_ID, KEYCLOAK_CLIENT_SECRET as individual secretKeyRef fromwestside-ai-assistant-secrets)overlays/westside-ai-assistant/prod/harbor-creds.enc.yaml— SOPS-encrypted image pull secret (usesops --encrypt)Files the agent should NOT touch:
bases/standard/*— shared base, no changesAcceptance Criteria
kubectl kustomize overlays/westside-ai-assistant/prod/renders valid manifestswestside-ai-assistantwith port 8000westside-ai-assistantwith port 8000env[].valueFrom.secretKeyRefreferencing secretwestside-ai-assistant-secrets(matching basketball-api pattern)harbor.tail5b443a.ts.net/westside-ai-assistant/apiTest Expectations
kubectl kustomize overlays/westside-ai-assistant/prod/succeedskubectl kustomize overlays/westside-ai-assistant/prod/Constraints
harbor.tail5b443a.ts.net(NOT internal URL — internal is only for CI push)westside-ai-assistant/api(FastAPI convention,/apisuffix)Checklist
Related
project-westside-ai-assistant— parent projectconvention-kustomize-overlay— overlay conventionsScope Review: NEEDS_REFINEMENT
Review note:
review-594-2026-03-28Ticket is well-structured with all template sections present, but has 4 body-level issues that need fixing before dispatch.
harbor-core.harbor.svc.cluster.localbut convention isharbor.tail5b443a.ts.net(all existing overlays use external Tailscale URL)env[].valueFrom.secretKeyRef— clarify which pattern to followScope refinement (review-594-2026-03-28):
harbor.tail5b443a.ts.net(internal URL is for CI push only, not image pull in overlays)secretKeyRefentries, NOTenvFrom secretRef(matches basketball-api pattern)Scope Review: READY (re-review)
Review note:
review-594-2026-03-28-v2Previous review:
review-594-2026-03-28(NEEDS_REFINEMENT)All 4 previous findings addressed:
harbor.tail5b443a.ts.netsecretKeyRef(not envFrom)Ticket is ready for dispatch.