-
Story
-
Resolution: Duplicate
-
Normal
-
None
-
None
-
5
-
False
-
-
False
-
-
Backport
Backport the bug fix to operator-redesign branch in argocd-operator. Below PR needs to be adjusted for new codebase.
https://github.com/argoproj-labs/argocd-operator/pull/1395
Please refer this doc for details about new codebase and coding-standards-and-best-practices.md for best practices .
Description of problem:
`spec.server.ingress.ingressClassName` does not reconcile correctly to updated values.
Logged in https://github.com/redhat-developer/gitops-operator/issues/608
Prerequisites (if any, like setup, operators/versions):
Originally reported on 1.7.4, replicated on 1.9.2. I believe any version should have the same issue.
Steps to Reproduce
1. Give your ArgoCD CR an ingress:
apiVersion: argoproj.io/v1alpha1
kind: ArgoCD
metadata:
name: argocd
spec:
server:
host: gitops.example.net
ingress:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-production
external-dns.alpha.kubernetes.io/target: gitops.apps.example-cluster.example.net
enabled: true
ingressClassName: openshift-default
tls:
- hosts:
- gitops.example.net
secretName: gitops.example.net-cert
2. Check your Ingress to see if it was applied correctly.
3. Update the `ingressClassName` field in your ArgoCD CR (`ingressClassName: openshift-default-new`)
4. Go back to your ingress, you will see that it does not have the updated field.
Actual results:
kind: Ingress
apiVersion: networking.k8s.io/v1
metadata:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-production
external-dns.alpha.kubernetes.io/target: gitops.apps.example-cluster.example.net
name: argocd-server
spec:
ingressClassName: openshift-default ## this should have been updated
tls:
- hosts:
- gitops.example.net
secretName: gitops.example.net-cert
rules:
- host: gitops.example.net
http:
paths:
- path: /
pathType: ImplementationSpecific
backend:
service:
name: argocd-server
port:
name: httpScreenshots
Expected results:
kind: Ingress
apiVersion: networking.k8s.io/v1
metadata:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-production
external-dns.alpha.kubernetes.io/target: gitops.apps.example-cluster.example.net
name: argocd-server
spec:
ingressClassName: openshift-default-new ## properly updated
tls:
- hosts:
- gitops.example.net
secretName: gitops.example.net-cert
rules:
- host: gitops.example.net
http:
paths:
- path: /
pathType: ImplementationSpecific
backend:
service:
name: argocd-server
port:
name: httpScreenshots
Reproducibility (Always/Intermittent/Only Once): always
Acceptance criteria:
- Make a fix to argocd-operator to have ingressClassName reconcile properly
- Make sure that tests for ingressClassName are working as expected
Definition of Done:
- PR made to argocd-operator that covers acceptance criteria
- Code is reviewed and merged
- make sure fix gets into gitops-operator
- close https://github.com/redhat-developer/gitops-operator/issues/608
Build Details:
Additional info (Such as Logs, Screenshots, etc):
- clones
-
GITOPS-3412 Server ingress not setting ingressClassName field when updated
-
- Closed
-