Closed ZhiminXiang closed 6 months ago
A potential solution would be to change the external-name configuration from TemplatedStringAsIdentifier("name", "projects/{{ .setup.configuration.project }}/topics/{{ .external_name }}")
to TemplatedStringAsIdentifier("name", "projects/{{ if .parameters.project }}{{ .parameters.project }}{{ else }}{{ .setup.configuration.project }}{{ end }}/topics/{{ .external_name }}")
.
This provider repo does not have enough maintainers to address every issue. Since there has been no activity in the last 90 days it is now marked as stale
. It will be closed in 14 days if no further activity occurs. Leaving a comment starting with /fresh
will mark this issue as not stale.
This issue is being closed since there has been no activity for 14 days since marking it as stale
. If you still need help, feel free to comment or reopen the issue!
We noticed that after restarting the GCP provider pod, the ID in the status of Topic and Subscription was changed to an incorrect value.
Here are the steps to reproduce this issue.
In our case, we explicitly set the
project
field in thespec.forProvider
to the valueca-zhimin-test
. This value is different from the projectID in the default providerConfig. (The reason is that we have multi-tenant model. So we built our custom webhook to set the right project for each tenant.)Here is the default providerConfig.
After creating the Topic, the ID in the status of the Topic used the project
ca-zhimin-test
, which is correctRestart the GCP provider controller.
After the GCP provider controller was successfully started, the ID of the status was changed to use the projectID in the providerConfig
The actual topic was NOT moved to
ca-paas-platform-dev
, and still existed in the GCP projectca-zhimin-test
, which is good. Only the ID of the status is incorrect.This is problematic for the use case of setting up dead letter topic in the subscription as this could result in failing to create the subscription because crossplane tried to look up the topic based on the incorrect ID in the status.