fix: OpenViking sync-wave deadlock - move ExternalSecret ordering inside Application

Remove resource-level sync-wave annotations that caused ArgoCD deadlock.
The wave 8 annotation was meant for platform-level ordering (apps-of-apps)
but was incorrectly applied to individual resources within the Application.

This caused ArgoCD to apply Deployment (wave 0) before ExternalSecret (wave 8),
resulting in CreateContainerConfigError since the pod needed the secret first.

Changes:
- namespace.yaml: Remove sync-wave annotation, add clarifying comment
- externalsecret.yaml: Change sync-wave from 8 to -1 (must sync before Deployment at wave 0)
- application.yaml: Remove sync-wave annotation, document as platform-level only in comments

This ensures:
1. ExternalSecret syncs first (wave -1)
2. Deployment uses it immediately (implicit wave 0)
3. No deadlock

Task: t_3906c41a
This commit is contained in:
Hermes Agent service account
2026-08-13 23:42:45 -05:00
parent d0f3ddba0d
commit fee9965d0a
3 changed files with 10 additions and 4 deletions

View File

@@ -13,7 +13,9 @@ metadata:
name: openviking-credentials
namespace: openviking
annotations:
argocd.argoproj.io/sync-wave: "8"
# Wave -1: Ensure ExternalSecret syncs BEFORE the Deployment (wave 0)
# This guarantees the secret exists before the pod tries to mount it
argocd.argoproj.io/sync-wave: "-1"
description: "Phase 1 secrets for OpenViking deployment"
spec:
refreshInterval: "1h"