在我們做完官網提供的範例可以看到,guestbook的application檔案和預設的project檔案
所以我們先準備好該檔案,然後用arocd cli去新增argocd application
argocd app create -f guestbook.yaml
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: guestbook
namespace: argocd # Argo CD 的安裝命名空間
spec:
project: default # 所屬的 AppProject,這裡默認為 "default"
source:
repoURL: 'https://github.com/argoproj/argocd-example-apps.git' # Git 儲存庫的 URL
targetRevision: HEAD # 目標分支或標籤,通常為主分支 "main" 或 "master"
path: 'guestbook' # 清單文件在儲存庫中的路徑
destination:
server: 'https://kubernetes.de
中的資源
selfHeal: true # 自動修復漂移的資源
syncOptions:
- CreateNamespace=true # 自動創建指定的命名空間(如果不存在)
當然在一個專案下可能有許多的app,假設有10個app是不是要輪流10個檔案部署,argocd 也有想到這個問題,可以在單一目錄下設定多個檔案.https://argo-cd.readthedocs.io/en/stable/user-guide/directory/
argocd app set guestbook --directory-include "*.yaml"
argocd app set guestbook --directory-include "{*.yml,*.yaml}"