動かざることバグの如し

近づきたいよ 君の理想に

ArgoCDで自動反映(auto-sync)の間隔を変更する方法

環境

ArgoCDのsync遅すぎ問題

よく記事に「ArgoCDは自動でgitをsyncしてくれるので自動で反映してくれる」みたいなこと書いてあるけどデフォルトの設定ではやってくれない。

しかもauto-syncを有効にしてもデフォルトでは「3分ごと」にポーリングされる(??????) 公式ドキュメント

The controller will automatically detect the new config (fast tracked using a webhook, or polled every 3 minutes)

そこで自動反映の設定を変える設定メモ

ArgoCDのgit自動取得の間隔を変更

これはアプリごとではなくコントローラー自体に設定がある --app-resync 単位は秒なので好きに変更できる。デフォルトは3分なので180

apiVersion: apps/v1
kind: Deployment
metadata:
  name: argocd-server
spec:
  selector:
    matchLabels:
      app.kubernetes.io/name: argocd-server
  template:
    spec:
      containers:
      - command:
        - argocd-server
        - --app-resync 30
        name: argocd-server

ArgoCDの自動sync機能を有効にする

実はこれだけだと自動Syncしてくれない(デフォルトでOFFになっているため

この設定はレポジトリごとなので --sync-policy automated を設定する必要がある

argocd app set xxxxxxxxxxx --sync-policy automated

Webhookで反映を伝える方法

検証中