1.8. GitOps CLI を使用したコアモードでのアプリケーションの作成
GitOps argocd CLI を使用して、core モードでアプリケーションを作成できます。
このサンプルワークフローでは、cluster ディレクトリーの内容を cluster-configs アプリケーションに対して再帰的に同期するように Argo CD を設定するプロセスを説明します。このディレクトリーは、OpenShift Container Platform クラスター設定とクラスター上の spring-petclinic namespace を定義します。
前提条件
- Red Hat OpenShift GitOps Operator が OpenShift Container Platform クラスターにインストールされている。
-
OpenShift CLI (
oc) がインストールされている。 -
Red Hat OpenShift GitOps
argocdCLI がインストールされている。
手順
ocCLI ツールを使用して OpenShift Container Platform クラスターにログインします。oc login -u <username> -p <password> <server_url>
$ oc login -u <username> -p <password> <server_url>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
oc login -u kubeadmin -p '<password>' https://api.crc.testing:6443
$ oc login -u kubeadmin -p '<password>' https://api.crc.testing:6443Copy to Clipboard Copied! Toggle word wrap Toggle overflow コンテキストが
kubeconfigファイルで正しく設定されているかどうかを確認します。oc config current-context
$ oc config current-contextCopy to Clipboard Copied! Toggle word wrap Toggle overflow 現在のコンテキストのデフォルトの namespace を
openshift-gitopsに設定します。oc config set-context --current --namespace openshift-gitops
$ oc config set-context --current --namespace openshift-gitopsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次の環境変数を設定して、Argo CD コンポーネント名をオーバーライドします。
export ARGOCD_REPO_SERVER_NAME=openshift-gitops-repo-server
$ export ARGOCD_REPO_SERVER_NAME=openshift-gitops-repo-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow すべてのアプリケーションを一覧表示して、
coreモードでargocdコマンドを実行できることを確認します。argocd app list --core
$ argocd app list --coreCopy to Clipboard Copied! Toggle word wrap Toggle overflow 設定が正しい場合は、既存のアプリケーションが次のヘッダーとともにリストされます。
出力例
NAME CLUSTER NAMESPACE PROJECT STATUS HEALTH SYNCPOLICY CONDITIONS REPO PATH TARGET
NAME CLUSTER NAMESPACE PROJECT STATUS HEALTH SYNCPOLICY CONDITIONS REPO PATH TARGETCopy to Clipboard Copied! Toggle word wrap Toggle overflow coreモードでアプリケーションを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow openshif-gitopsArgo CD インスタンスが管理するspring-petclinic宛先 namespace にラベルを付けます。oc label ns spring-petclinic "argocd.argoproj.io/managed-by=openshift-gitops"
$ oc label ns spring-petclinic "argocd.argoproj.io/managed-by=openshift-gitops"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用可能なアプリケーションをリスト表示して、アプリケーションが正常に作成されたことを確認します。
argocd app list --core
$ argocd app list --coreCopy to Clipboard Copied! Toggle word wrap Toggle overflow cluster-configsの Argo CD アプリケーションはHealthyステータスであっても、sync ポリシーがnoneであるため、自動的に同期されず、OutOfSyncステータスのままになります。