Skip SecretHashes update on ansibleLimit-scoped dataplane deployments#1781
Skip SecretHashes update on ansibleLimit-scoped dataplane deployments#1781lmiccini wants to merge 1 commit intoopenstack-k8s-operators:mainfrom
Conversation
|
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/56ac80bd0e7547ad88350eb0206886b5 ✔️ openstack-k8s-operators-content-provider SUCCESS in 3h 18m 47s |
04cc55a to
1698305
Compare
|
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/db62c9cd33b34a538c7eccf243769b6a ✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 02m 26s |
3885c4a to
c1fe8f8
Compare
|
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/b5d3972863e64857b2da5055f867ef55 ✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 20m 43s |
|
/retest |
|
recheck |
|
/test openstack-operator-build-deploy-kuttl-4-18 |
cbfbb7c to
f52529a
Compare
f52529a to
017d2ca
Compare
|
/test functional |
97bb482 to
b1d9350
Compare
|
/test openstack-operator-build-deploy-kuttl-4-18 |
187eecc to
9f7cae7
Compare
|
/test openstack-operator-build-deploy-kuttl-4-18 |
1 similar comment
|
/test openstack-operator-build-deploy-kuttl-4-18 |
|
Why can't infra-operator block deletion of there is mismatch between latest deployment and nodeset secret hashes? I am not sure if we should go this path as it is othrogonal to the original design. Also, users should be discouraged to do secret rotations using ansible_limits. It is there for scenarios where nodes are not reachable for some reason and users are expected to do full deployment across all nodes of the nodeset eventually to keep things in sync. |
Thanks @rabi . One of the challenges with that approach is that the last deployment may not be representative of the overall status of the nodeset. AFAICU we would have to introspect the deployments to check whether ansible_limits was used and/or if only a subset of the services were deployed, and repeat this pattern not just in infra but other operators that need to know if the dataplane is in sync (keystone for appcred, possibly others?). |
I am not sure if we need to solve that by adding per-node tracking or by introspecting all deployments. That would start to break the current NodeSet design and make it overly complex IMO. For this requirement, I think we can keep it simple:
With this approach, any scoped deployment, either via ansibleLimit or servicesOverride, keeps deletion blocked. Only a full unscoped deployment across all nodes brings the NodeSet back in sync. We can add the ansibleLimit guard where SecretHashes are copied back to the NodeSet in internal/controller/dataplane/openstackdataplanenodeset_controller.go. |
9f7cae7 to
e816aa3
Compare
|
/test functional |
|
Build failed (check pipeline). Post ✔️ openstack-k8s-operators-content-provider SUCCESS in 12m 54s |
e816aa3 to
13d1c14
Compare
13d1c14 to
5761424
Compare
|
/lgtm |
|
/test openstack-operator-build-deploy-kuttl-4-18 |
|
recheck |
For servicesOverride deployments, merge SecretHashes into the existing map without resetting it, since all nodes were touched. For ansibleLimit-scoped deployments, skip the update entirely as not all nodes received the secrets. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
5761424 to
b043596
Compare
|
New changes are detected. LGTM label has been removed. |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: lmiccini The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
Merge Failed. This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset. |
|
@lmiccini: The following tests failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
For servicesOverride deployments, merge SecretHashes into the existing map without resetting it, since all nodes were touched.
For ansibleLimit-scoped deployments, skip the update entirely as not all nodes received the secrets.