-
Task
-
Resolution: Done
-
Major
-
None
-
None
-
None
Trying to mimic the Support gradual fleetwide service component upgrades (MGDCTRS-172) I found out that there are several things needed to be updated to make this work with the latest RHOC (1.1.21).
By default, rhoc comes with cos.operator.camel.label-selection.enabled = false in the cos-fleetshard-operator-camel-config config map. Changing this one to true and restarting the cos-fleetshard-operator-camel results in the connectors not starting, because there are two things wrong:
1. after enabling the label-selection option, there is a new annotation on the created kameletbinding:
"camel.apache.org/operator.id": "cos-fleetshard-operator-camel"
This annotation is set by the cos-fleetshard-operator-camel and must match the OPERATOR_ID env variable on the camel-k-operator deployment, that is not the case:
oc get deployment camel-k-operator -o jsonpath='{.spec.template.spec.containers[0].env[?(@.name=="OPERATOR_ID")]}' {"name":"OPERATOR_ID","value":"camel-k"}
2. for the filtering to work from the camel-k-operator point of view, the IntegrationPlatform object also needs to be annotated with the same annotation, but currently (if I understand it correctly) RHOC doesn't create any IntegrationPlatform and the camel-k operator creates the default integration platform automatically:
apiVersion: camel.apache.org/v1 kind: IntegrationPlatform metadata: creationTimestamp: "2022-12-05T10:00:58Z" generation: 1 labels: camel.apache.org/platform.generated: "true" name: camel-k namespace: redhat-openshift-connectors
This needs to be changed to:
apiVersion: camel.apache.org/v1 kind: IntegrationPlatform metadata: labels: camel.apache.org/operator.id: <camel-k-operator id here> camel.apache.org/secondary.platform: "true" <this would be needed later during the "gradual upgrade"> name: camel-k namespace: redhat-openshift-connectors
- relates to
-
MGDCTRS-1747 Properly configure Strimzi: Label selection
-
- Closed
-