EKS ArgoCD Capability 構築 — ApplicationSet で複数環境に自動デプロイする
Git Directory Generator でディレクトリ構造から dev/staging/prod の Application を自動生成。環境追加はディレクトリ push だけ、個別環境の変更は他に波及しない。ポーリング間隔が長い点に注意。
「argocd」タグが付いたコンテンツ一覧
Git Directory Generator でディレクトリ構造から dev/staging/prod の Application を自動生成。環境追加はディレクトリ push だけ、個別環境の変更は他に波及しない。ポーリング間隔が長い点に注意。
Capability Role に IAM ポリシーを1つ追加するだけで CodeCommit プライベートリポジトリからデプロイできる。URL typo と権限不足が同じエラーになる点と、権限修正後のリカバリに手動 refresh が推奨される点が落とし穴。
eksctl の YAML 設定ファイルで ArgoCD Capability を作成し、サンプルアプリのデプロイまでを実施。AWS CLI 版との違いや CloudFormation 経由の挙動を整理する。
EKS Capabilities として提供される ArgoCD Capability を AWS CLI で有効化し、サンプルアプリのデプロイまでを実施。Identity Center のリージョン指定やアクセスポリシーの関連付けなど、実際に踏んだ落とし穴も共有する。
ApplicationSet の Git Directory Generator で新ディレクトリを追加した場合、Application の自動生成に約8分かかった。即座に反映したい場合は hard refresh が有効。
IAM ポリシーを修正しても ArgoCD のバックオフにより自動リカバリに時間がかかる。argocd.argoproj.io/refresh=hard アノテーションで即座にリトライできる。
IAM ポリシーの Resource を特定リポジトリにスコープしている場合、存在しないリポジトリへのアクセスも「リポジトリが見つからない」ではなく AccessDeniedException になる。
ArgoCD Application を kubectl delete しても Pod や Service は消えない。カスケード削除には resources-finalizer.argocd.argoproj.io の設定が必要。