-
Bug
-
Resolution: Done
-
Major
-
None
-
None
Description of problem:
spec.<component>.enabled flag was added as part of https://issues.redhat.com/browse/GITOPS-3425 . With RC 1.11.0-4, on setting enabled: false for server, repo server and applicationset components, pods are not being scaled down. There seems to be no issues with disabling redis and controller components.
Workaround
N/A
Prerequisites (if any, like setup, operators/versions):
1.11.0-4 RC
Steps to Reproduce
- Create a namespace scoped argocd instance
- Set enabled flag for repo server, applicationset or server component to false
Actual results:
- .status.phase for argocd goes into pending state as the disabled components' state is set to unknown even though disabling the component is intentional
- No logs observed from operator pod upon disabling server, nor is the server pod reconciled when the flag is set back to true
- Logs from operator pod on disabling applicationset or repo server:
2023-11-29T07:15:04Z ERROR Reconciler error {"controller": "argocd", "controllerGroup": "argoproj.io", "controllerKind": "ArgoCD", "ArgoCD": {"name":"argocd","namespace":"test"}, "namespace": "test", "name": "argocd", "reconcileID": "c83d8dba-9944-47c3-b8d1-9f75a60346e9", "error": "roles.rbac.authorization.k8s.io \"argocd-applicationset-controller\" not found"} sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler /remote-source/deps/gomod/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.3/pkg/internal/controller/controller.go:329 sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem /remote-source/deps/gomod/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.3/pkg/internal/controller/controller.go:266 sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2 /remote-source/deps/gomod/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.3/pkg/internal/controller/controller.go:227
- If repo server is disabled independently, operator log says:
2023-11-29T07:25:13Z INFO controller_argocd Repo Server is disabled. This would affect the functioning of ApplicationSet Controller.37252023-11-29T07:25:13Z INFO controller_argocd reconciling applicationset service37262023-11-29T07:25:13Z INFO controller_argocd reconciling applicationset service37272023-11-29T07:25:13Z INFO controller_argocd reconciling repo-server TLS secret37282023-11-29T07:25:13Z INFO controller_argocd reconciling redis-server TLS secret
but the repo server is up anyway
$ oc get pods -n test NAME READY STATUS RESTARTS AGE argocd-application-controller-0 1/1 Running 0 3m12s argocd-applicationset-controller-5bddd9ddf-tf59k 1/1 Running 0 3m13s argocd-dex-server-85457cf55d-6cjjq 1/1 Running 0 74m argocd-redis-6b888c5cb9-c2bg7 1/1 Running 0 14m argocd-repo-server-5ccd4cb7c8-wqtmf 1/1 Running 0 7m48s argocd-server-57d5999fd9-hczxv 1/1 Running 0 107s
Expected results:
- Respective components get disabled upon setting the flag
- status.phase for argocd is set to available if the component is intentionally being disabled
Reproducibility (Always/Intermittent/Only Once):
Always
Acceptance criteria:
- Expected result is met
Definition of Done:
- Acceptance criteria is met
Build Details:
Additional info (Such as Logs, Screenshots, etc):