-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Wrong password in generated connection-secret for PostgreSQLServer #230
Comments
Wonder if that's related to this very old PR of mine #88 The root problem is that Azure returns |
@haraldatbmw I'm not able to reproduce this using |
@muvaf My YAMLs can be found here: crossplane/crossplane#2192 |
Alright, I think this is about the composition you have rather than I think what happens is that it patches the whole |
Just retried with your hint. I changed the patch inside the composition like this:
I applied the claim and watched the secret |
I do have the same issue. The secret changes at least 3 times. On my experiments, sometimes the first password, sometimes the last one worked. |
I also tried removing the metadata patches to no avail. Still same issue. |
- Fixes crossplane-contrib#230 Signed-off-by: Alper Rifat Ulucinar <ulucinar@users.noreply.github.com>
Yesterday, I tried to reproduce this issue using the example manifest in the provider-azure repo but in a couple of retries I was not able to. However, when I tried to reproduce it using the claim and composite & composition definitions supplied by @haraldatbmw here I was able to reproduce it. I stripped down the composition so that I could only work with core crossplane & provider-azure controllers. In a run where I observed this issue, I was able to collect the following provider-azure logs:
And this is reflected in the corresponding status:
atProvider:
lastOperation:
errorMessage: Code="ServiceBusy" Message="Service is temporarily busy and the
operation cannot be performed. Please try again later."
method: PUT
pollingUrl: https://management.azure.com/subscriptions/...
status: Failed This breaks our assumption here because a create call has already been issued (and the corresponding future has been stored) but because of a temporary error it's not in in-progress state. Furthermore, as indicated here the provisioning state values returned are resource specific. In this specific case, provisioning successfully completed but we had a wrong (re-)generated password stored in the connection secret. A fix targeted at provisioning status checks referenced above also failed to address the issue because:
Because of these reasons, I decided to take a different approach that's detailed in #284. After a run of 10 tries using a script developed for reproducing/testing this issue, no inconsistent passwords were observed. |
What happened?
During the creation of the Azure resource PostgreSQLServer the password inside the generated connection-secret is changed multiple times. And sometimes (not deterministic) the final secret contains a wrong password. It seams to be some kind of timing issue.
I observed the secret changes. They looked like this:
If I manually delete the secret it gets recreated by crossplane but the password data-field is missing.
How can we reproduce it?
Create a Azure resource PostgreSQLServer multiple times and verify if connection with the secret can be established.
What environment did it happen in?
Crossplane version: 1.1.0
The text was updated successfully, but these errors were encountered: