Do we need to create argocd-custom by default?
gyliu513 opened this issue · comments
@morningspace @liyanwei93 Can we disable argocd-custom by default?
@gyliu513 if this is the deployment using all-in-one chart, then the argocd-custom is required, because it includes:
- All the custom health checks that are needed in order to determine when CP4WAIOps install is completed
- Some settings such as
ignoreDifferences
andapplicationInstanceLabelKey
to avoid the annoyingOut of Sync
indicator - The cluster-admin RBAC setting for the OpenShift GitOps service account.
For those deployments that are not using all-in-one chart, argocd-custom will not be deployed. But, user will then have to deal w/ some work manually, such as the RBAC settings, and if user does not do these settings, they will experience all the issues, such as, Argo CD App turns into "green" too early, wrong Out of Sync
, etc.
Long termly, I would think we should suggest user to use the all-in-one chart, where argo-custom in this case, is aimed to apply some customization that is not in place as OOB settings when OpenShift GitOps (or Argo CD) is installed.
Some settings such as ignoreDifferences and applicationInstanceLabelKey to avoid the annoying Out of Sync indicator
@morningspace can this be done via application with field of ignoreDifferences
https://argo-cd.readthedocs.io/en/stable/user-guide/diffing/#application-level-configuration, why using a new app for argo CD here?
The reason for that is, some Out-of-Sync
happens at root level Argo CD App. In our docs, these Argo CD Apps are actually created on the fly either from UI or command line and not stored in git. So, instead of telling user to manually add ignoreDifferences
from UI or command line, Argo CD has a native feature that allows user to add that in its argoproj.io/ArgoCD
CR. Of course, for those Argo CD Apps stored in git, we add that in Application
YAML manifests.
So, to clarify, besides the custom health checks and other Argo CD customization stuff, those ignoreDifferences
defined in argoproj.io/ArgoCD
CR, which is stored in argocd-custom
in git, are for root level Argo CD App, not for child level App or any App stored in git.