8.2. Creating GitOps applications on MicroShift
You can create a custom YAML configuration to deploy and manage applications in your MicroShift service. To install the necessary packages to run GitOps applications, follow the documentation in "Installing the GitOps Argo CD manifests from an RPM package".
Prerequisites
-
You installed the
microshift-gitopspackages. -
The Argo CD pods are running in the
openshift-gitopsnamespace.
Procedure
Create a YAML file and add your customized configurations for the application:
Example YAML for a
spring-petclinicapplicationkind: AppProject apiVersion: argoproj.io/v1alpha1 metadata: name: default namespace: openshift-gitops spec: clusterResourceWhitelist: - group: '*' kind: '*' destinations: - namespace: '*' server: '*' sourceRepos: - '*' --- kind: Application apiVersion: argoproj.io/v1alpha1 metadata: name: spring-petclinic namespace: openshift-gitops spec: destination: namespace: spring-petclinic server: https://kubernetes.default.svc project: default source: directory: recurse: true path: app repoURL: https://github.com/siamaksade/openshift-gitops-getting-started syncPolicy: automated: {} syncOptions: - CreateNamespace=true - ServerSideApply=trueTo deploy the applications defined in the YAML file, run the following command:
$ oc apply -f <my_app.yaml>1 - 1
- Replace
<my_app.yaml>with the name of your application YAML.
Verification
To verify your application is deployed and synced, run the following command:
$ oc get applications -AIt might take a few minutes for the application to show the
Healthystatus.Example output
NAMESPACE NAME SYNC STATUS HEALTH STATUS openshift-gitops spring-petclinic Synced Healthy