-
Bug
-
Resolution: Won't Do
-
Normal
-
None
-
4.14
-
Moderate
-
No
-
1
-
Sprint 254, NE Sprint 255, NE Sprint 256, NE Sprint 257, NE Sprint 260
-
5
-
Rejected
-
False
-
Description of problem:
After a 4.11 -> 4.12 -> 4.13 -> 4.14 upgrade, when creating a LB type ingress controller that matches with the canary route, it's expected to get a host in the canary route with the domain defined in the ingress controller but it gets the canary host instead. The test "[sig-installer][Suite:openshift/openstack][lb][Serial] The Openstack platform should create a TCP Amphora LoadBalancer when LoadBalancerService ingressController is created on Openshift" [1] fails consistently. It doesn't fail on fresh 4.14 clusters. (See steps to reproduce for more info)
Version-Release number of selected component (if applicable):
4.14.28
How reproducible:
Always after 4.11 -> 4.12 -> 4.13 -> 4.14 upgrade (haven't checked after a fresh 4.13 -> 4.14 upgrade)
Steps to Reproduce:
1. Create a LB type ingress controller with: apiVersion: operator.openshift.io/v1 kind: IngressController metadata: name: canary-sharding namespace: openshift-ingress-operator spec: {...} domain: sharding-test.apps.shiftstack.com endpointPublishingStrategy: type: LoadBalancerService [...] routeSelector: matchLabels: ingress.openshift.io/canary: canary_controller {...} 2. Obtain the host for the new ingress controller from the canary route: apiVersion: route.openshift.io/v1 kind: Route metadata: annotations: haproxy.router.openshift.io/balance: roundrobin openshift.io/host.generated: "true" creationTimestamp: "2024-05-30T15:13:52Z" labels: ingress.openshift.io/canary: canary_controller name: canary namespace: openshift-ingress-canary ownerReferences: - apiVersion: apps/v1 controller: true kind: daemonset name: ingress-canary uid: 52d20bab-4c78-46ce-8709-68a2e36e9a41 resourceVersion: "2076792" uid: aa18b66d-219d-4f81-8a03-24e8d667e956 spec: host: canary-openshift-ingress-canary.apps.ostest.shiftstack.com port: targetPort: 8080 tls: insecureEdgeTerminationPolicy: Redirect termination: edge to: kind: Service name: ingress-canary weight: 100 wildcardPolicy: None status: ingress: - conditions: - lastTransitionTime: "2024-05-30T15:19:58Z" status: "True" type: Admitted host: canary-openshift-ingress-canary.apps.ostest.shiftstack.com routerCanonicalHostname: router-default.apps.ostest.shiftstack.com routerName: default wildcardPolicy: None - conditions: - lastTransitionTime: "2024-06-03T19:13:44Z" status: "True" type: Admitted host: canary-openshift-ingress-canary.apps.ostest.shiftstack.com routerCanonicalHostname: router-canary-sharding.sharding-test.apps.shiftstack.com routerName: canary-sharding wildcardPolicy: None
Actual results:
Getting host: canary-openshift-ingress-canary.apps.ostest.shiftstack.com instead of the expected: host: canary-openshift-ingress-canary.sharding-test.apps.shiftstack.com
Expected results:
The test expects [2] to find a host containing "sharding-test.apps.shiftstack.com" in the status.ingress field, but it doesn't find it: status: ingress: - conditions: - lastTransitionTime: "2024-05-30T15:19:58Z" status: "True" type: Admitted host: canary-openshift-ingress-canary.apps.ostest.shiftstack.com routerCanonicalHostname: router-default.apps.ostest.shiftstack.com routerName: default wildcardPolicy: None - conditions: - lastTransitionTime: "2024-06-03T19:13:44Z" status: "True" type: Admitted host: canary-openshift-ingress-canary.apps.ostest.shiftstack.com <---- routerCanonicalHostname: router-canary-sharding.sharding-test.apps.shiftstack.com routerName: canary-sharding wildcardPolicy: None
Additional info: