Closed vgiannone3 closed 2 years ago
Could you please do
kubectl get configuration.kafka
I see
a504ae8-kafkacluster-2-config True True arn:aws:kafka:reg:123:configuration/kafkacluster-2-config/uuid-4
If it's not True/True, then kubectl describe
it.
Finally,
k describe cluster.kafka
Configuration Info:
Arn: arn:aws:kafka:reg:123:configuration/kafkacluster-2-config/uuid-4
Arn Ref:
Name: kafkacluster-2-config
Arn Selector:
Match Controller Ref: true
Revision: 1
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning CannotResolveResourceReferences 14m (x3 over 14m) managed/cluster.kafka.aws.crossplane.io cannot resolve references: mg.Spec.ForProvider.CustomClusterParameters.CustomBrokerNodeGroupInfo.SecurityGroups: referenced field was empty (referenced resource may not yet be ready)
Normal CreatedExternalResource 14m managed/cluster.kafka.aws.crossplane.io Successfully requested creation of external resource
(The securitygroup had a bug so it took a while before we fixed that, you should not see the same message)
it is working like in @chlunde environment also in our environment - please check your configuration
What happened?
I created a crossplane composition which creates Kafka Configuration and Cluster resources. In order to link the two, I used the configurationInfo.arnSelector property in the cluster resource definition, with a match label.
After applying the composition, the configuration resource is created, and then the configuration arn property for the cluster is updated, but not with the arn. It is updated with the name of the Configuration resource. This puts the Cluster resource into a bad state, where it is reporting that the arn does not exist.
As a workaround, I delete the Cluster resource, and once crossplane creates it again, the arn is correctly set. To make this automated, I created a status variable within the composite resource definition, and set the status to the arn. This works for now, but it would be great if the selector worked as advertised.
How can we reproduce it?
Refer to the description above.
What environment did it happen in?
I am also using ArgoCD as the GitOps tool. It's version is 2.3.3