同期ポリシー、自動修復、Helm サポートを備えた GitOps デプロイメント用の ArgoCD アプリケーションマニフェストを生成します。
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: my-app
namespace: argocd
spec:
project: default
source:
repoURL: https://github.com/org/repo
targetRevision: HEAD
path: k8s/overlays/prod
destination:
server: https://kubernetes.default.svc
namespace: productionkubectl apply -f argocd-app.yaml
ArgoCDは、Kubernetes向けのGitOps継続的デリバリーツールです。Gitリポジトリの変更を監視し、リポジトリ内の望ましい状態に合わせるよう、Kubernetesリソースを自動的に同期させます。「アプリケーション」はArgoCDの中核となるリソースであり、ソースリポジトリ、ターゲットクラスター、宛先ネームスペース、および同期ポリシーを定義します。
アプリケーション名、ネームスペース、GitリポジトリのURL、およびそのリポジトリ内のKubernetesマニフェストやHelmチャートが格納されているパスを入力してください。 ソースタイプとして「Git」または「Helm」を選択し、対象のリビジョン(ブランチまたはタグ)を設定して、同期ポリシーを選択してください。ジェネレータは、完全なアプリケーション YAML ファイルと、ArgoCD に登録するための `<code>kubectl apply</code>` コマンドを出力します。
「自動同期(pruneおよびself-healを含む)」が本番環境での推奨設定です。ArgoCDは、Gitから削除されたリソースを削除し、ドリフトから自動的に回復します。初回デプロイの際は、手動同期を使用することで、適用前に作成される内容を確認できます。ネームスペースの自動作成が有効になっている場合、サーバーサイドの適用オプションとして<code>「CreateNamespace=true」</code>が追加されます。