TL;DR:
- Installing, updating or removing follows Kubestack's GitOps flow.
- Instructions assume the default repository layout.
- Bases can be consumed as-is or customized.
- Step-by-step instructions are framework specific but bases can be used independently.
Install
Vendor the base
# Run these commands from the root of your Kubestack infra repositorywget https://storage.googleapis.com/catalog.kubestack.com/argo-cd-v1.8.3-kbst.0.zipunzip -d manifests/bases/ argo-cd-v1.8.3-kbst.0.ziprm argo-cd-v1.8.3-kbst.0.zipInclude resource in apps overlay
cd manifests/overlays/appskustomize edit add resource ../../bases/argo-cd/haCommit and push
cd -git checkout -b add-argo-cdgit add manifests/bases/argo-cd manifests/overlays/apps/kustomization.yamlgit commit -m "Add argo-cd v1.8.3-kbst.0 base"git push origin add-argo-cdReview PR and merge
Finally, review and merge the PR into master. Once it's been successfully applied against the Ops-Cluster set a prod-deploy tag to also apply the change against the Apps-Cluster.
Update
To update the operator delete the previously vendored base and then vendor the new version.
Delete the previous vendored version
# Run these commands from the root of your Kubestack infra repositoryrm -r manifests/bases/argo-cdVendor the new version
# Run these commands from the root of your Kubestack infra repositorywget https://storage.googleapis.com/catalog.kubestack.com/argo-cd-v1.8.3-kbst.0.zipunzip -d manifests/bases/ argo-cd-v1.8.3-kbst.0.ziprm argo-cd-v1.8.3-kbst.0.zipCommit and push
git checkout -b update-argo-cdgit add manifests/bases/argo-cdgit commit -m "Update argo-cd base to v1.8.3-kbst.0"git push origin update-argo-cd
Remove
Operators often create resources based on custom objects. When removing an operator, follow a two-step process to ensure operator provisioned resources are purged properly.
- Remove all the operator's custom objects.
- Once the operator had time to de-provision all resources it created, follow the instructions below to remove the operator itself.
Remove resource from apps overlay
cd manifests/overlays/appskustomize edit remove resource ../../bases/argo-cd/haDelete the vendored base from your repository
cd -# Run these commands from the root of your Kubestack infra repositoryrm -r manifests/bases/argo-cdCommit and push
git checkout -b remove-argo-cdgit add manifests/bases/argo-cdgit commit -m "Remove argo-cd base"git push origin remove-argo-cd
Getting started
After installing Argo CD from the catalog follow the getting started with Argo CD guide continuing with step 2.
When configuring access to the Argo CD API server, consider the Ingress option. The Kubestack catalog includes the Nginx ingress controller (installed by default) and also includes Cert-manager in the catalog. Making it easy to install the prerequisites Argo CD requires for Ingress.