$ ADMIN_PASSWD=$(oc get secret openshift-gitops-cluster -n openshift-gitops -o jsonpath='{.data.admin\.password}' | base64 -d)
With Argo CD, you can create your applications on an OpenShift Container Platform cluster by using the GitOps argocd
cli.
You can create applications in the default mode by using the GitOps argocd
cli.
You have installed the Red Hat OpenShift GitOps Operator on your OpenShift Container Platform cluster.
You have installed the OpenShift cli (oc
).
You have installed the Red Hat OpenShift GitOps argocd
cli.
You have logged in to Argo CD instance.
Get the admin
account password for the Argo CD server:
$ ADMIN_PASSWD=$(oc get secret openshift-gitops-cluster -n openshift-gitops -o jsonpath='{.data.admin\.password}' | base64 -d)
Get the Argo CD server URL:
$ SERVER_URL=$(oc get routes openshift-gitops-server -n openshift-gitops -o jsonpath='{.status.ingress[0].host}')
Log in to the Argo CD server by using the admin
account password and enclosing it in single quotes:
Enclosing the password in single quotes ensures that special characters, such as |
$ argocd login --username admin --password ${ADMIN_PASSWD} ${SERVER_URL}
$ argocd login --username admin --password '<password>' openshift-gitops.openshift-gitops.apps-crc.testing
Verify that you are able to run argocd
commands in the default mode by listing all applications:
$ argocd app list
If the configuration is correct, then existing applications will be listed with the following header:
NAME CLUSTER NAMESPACE PROJECT STATUS HEALTH SYNCPOLICY CONDITIONS REPO PATH TARGET
Create an application in the default mode:
$ argocd app create app-spring-petclinic \
--repo https://github.com/redhat-developer/openshift-gitops-getting-started.git \
--path app \
--revision main \
--dest-server https://kubernetes.default.svc \
--dest-namespace spring-petclinic \
--directory-recurse \
--sync-policy automated \
--self-heal \
--sync-option Prune=true \
--sync-option CreateNamespace=true
Label the spring-petclinic
destination namespace to be managed by the openshif-gitops
Argo CD instance:
$ oc label ns spring-petclinic "argocd.argoproj.io/managed-by=openshift-gitops"
List the available applications to confirm that the application is created successfully and repeat the command until the application has the Healthy
and Synced
statuses:
$ argocd app list
You can create applications in core
mode by using the GitOps argocd
cli.
You have installed the Red Hat OpenShift GitOps Operator on your OpenShift Container Platform cluster.
You have installed the OpenShift cli (oc
).
You have installed the Red Hat OpenShift GitOps argocd
cli.
Log in to the OpenShift Container Platform cluster by using the oc
cli tool:
$ oc login -u <username> -p <password> <server_url>
$ oc login -u kubeadmin -p '<password>' https://api.crc.testing:6443
Check whether the context is set correctly in the kubeconfig
file:
$ oc config current-context
Set the default namespace of the current context to openshift-gitops
:
$ oc config set-context --current --namespace openshift-gitops
Set the following environment variable to override the Argo CD component names:
$ export ARGOCD_REPO_SERVER_NAME=openshift-gitops-repo-server
Verify that you are able to run argocd
commands in core
mode by listing all applications:
$ argocd app list --core
If the configuration is correct, then existing applications will be listed with the following header:
NAME CLUSTER NAMESPACE PROJECT STATUS HEALTH SYNCPOLICY CONDITIONS REPO PATH TARGET
Create an application in core
mode:
$ argocd app create app-spring-petclinic --core \
--repo https://github.com/redhat-developer/openshift-gitops-getting-started.git \
--path app \
--revision main \
--dest-server https://kubernetes.default.svc \
--dest-namespace spring-petclinic \
--directory-recurse \
--sync-policy automated \
--self-heal \
--sync-option Prune=true \
--sync-option CreateNamespace=true
Label the spring-petclinic
destination namespace to be managed by the openshif-gitops
Argo CD instance:
$ oc label ns spring-petclinic "argocd.argoproj.io/managed-by=openshift-gitops"
List the available applications to confirm that the application is created successfully and repeat the command until the application has the Healthy
and Synced
statuses:
$ argocd app list --core