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
Multiple CR Versions in watches.yaml results in duplicate Ansible reconciliations #2950
Comments
Hi @jessebye, Thank you for contacting us. Could you please let us know if you have a CR for each version applied or not? Could you please check that and let us know? |
@camilamacedo86 I only have one CR applied (the v2 resource). |
HI @jessebye, Really great to know. So, may we have some bug in the ansible watch which is not checking the versions. So, IMO the next steps for we analyse it and then provide a fix if it is the case are:
So, please feel free to work on these steps and contribute. Otherwise, we will try o check it as soon as possible. @fabianvf wdyt? Do you agree with the steps? Would you like to supplement it? |
This may be related to this comment: #2895 (comment) I don't think multi-version CRDs are supported with Ansible-based operators. At the very least, we may need to document this limitation. |
Yeah, I think long-term the proper way to handle multi-version CRDs is with a conversion webhook, which we've not yet tackled with Ansible-based Operators. As a workaround for now, I'd recommend creating a playbook that will conditionally import either the |
Issues go stale after 90d of inactivity. Mark the issue as fresh by commenting If this issue is safe to close now please do so with /lifecycle stale |
This issue was answered already. See the latest comment. |
@camilamacedo86 @fabianvf At the very least can we have something added to the documentation please ? There are still grey areas to support multi versions in our operators ?
Thanks in advance. |
Even with creating separate roles as suggested in the comment above and conditionally including them is invoking the ansible with both
I can confirm that CRD which is created is only v2. Edit - crdVersion is extracted from
|
Referring to Multiple CR Versions in watches.yaml results in duplicate Ansible reconciliations, do you know if there is already a solution? |
Bug Report
What did you do?
Created a CRD with two versions:
Created a
watches.yaml
with:Created a CR on v2:
What did you expect to see?
Only the v2 role should have been invoked.
What did you see instead? Under which circumstances?
Both the v1 and v2 roles are invoked simultaneously. Here were the operator logs:
Environment
v0.17.0
n/a
EKS
Ansible
Possible Solution
n/a
Additional context
n/a
The text was updated successfully, but these errors were encountered: