-
Generate the Argo CD Application or AppProject Kubernetes custom resources for the Quarkus application
-
Command Line interface to install / uninstall and list Argo CD Application(s)
-
Integration with Quarkus Helm
-
DevServices able to install Argo CD on kubernetes cluster: kind or k3s
-
Project added under a version control system and pushed on a repository (e.g. GitHub, etc.)
-
A Kubernetes cluster with Argo CD installed and supporting
argoproj.io/v1alpha1.
To get the Argo CD custom resources generated, it is needed to add the quarkus-argocd extension to a Quarkus project.
To add the extension to the project, manually edit the pom.xml or build.gradle file.
<dependency>
<groupId>io.quarkiverse.argocd</groupId>
<artifactId>quarkus-argocd</artifactId>
<version>999-SNAPSHOT</version>
</dependency>The project provides a companion CLI that can be used to generate, install / uninstall and list the Argo CD Applications. The CLI can be added with the following command:
quarkus plug add io.quarkiverse.argocd:quarkus-argocd-cli:999-SNAPSHOTTo re-trigger the file generation:
quarkus argocd project generateNote: Several parameters can be used to configure the generated CR. Use quarkus argocd generate -h to display the usage.
To install the generated Application and AppProject (optional) custom resources to the currently connected Kubernetes cluster:
quarkus argocd project installNote: In case of un-committed or un-pushed changes the command will prompt users to decide if they want to proceed with the installation.
The currently connected Kubernetes cluster is the one that is configured in the ~/.kube/config file.
It can be overridden by setting in applcation.properties a different API server URL and token. See the quarkus-kubernetes-client extension for more details.
To uninstall:
quarkus argocd project uninstall