-
Notifications
You must be signed in to change notification settings - Fork 103
Validate ansibleHost and ctlplane fixedIP for pre-provisioned nodes #1802
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
base: main
Are you sure you want to change the base?
Conversation
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: rabi The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
Probably a flaky test? |
|
/test openstack-operator-build-deploy-kuttl-4-18 |
0ed8bf0 to
496f239
Compare
|
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/27c287f32bb74b7e8ee5a39af21bb77a ❌ openstack-k8s-operators-content-provider NODE_FAILURE Node request 100-0008160556 failed in 0s |
… nodes For pre-provisioned dataplane nodes, ansibleHost must be a valid IP address. This is required because the controller defaults the ctlplane network fixedIP from ansibleHost during IPAM reservation, ensuring the reserved IP matches the already-configured node interface. Without a valid IP, IPAM could reserve a different address and break connectivity during deployment. The validating webhook enforces that for pre-provisioned nodes: - ansibleHost is not empty - ansibleHost is a valid IP address The controller (ipam.go) defaults the ctlplane fixedIP from ansibleHost when not already set. The ctlplane network is identified using the netServiceNetMap from NetConfig, so it works regardless of the network name. Signed-off-by: rabi <ramishra@redhat.com>
496f239 to
3f6c604
Compare
|
Build failed (check pipeline). Post https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/4f8823cf30a84e3fa7b102deeb1cf5c8 ❌ openstack-k8s-operators-content-provider NODE_FAILURE Node request 100-0008160605 failed in 0s |
|
Hi @rabi - thanks for filing this PR! About this part:
Will this still catch the problem in our case? Here's what we used to have: Now we are using this: We also have this (unchanged): Using I can share more of our |
For pre-provisioned dataplane nodes, ansibleHost must be a valid IP address. This is required because the controller defaults the ctlplane network fixedIP from ansibleHost during IPAM reservation, ensuring the reserved IP matches the already-configured node interface. Without a valid IP, IPAM could reserve a different address and break connectivity during deployment.
The validating webhook enforces that for pre-provisioned nodes:
The controller (ipam.go) defaults the ctlplane fixedIP from ansibleHost when not already set. The ctlplane network is identified using the netServiceNetMap from NetConfig, so it works regardless of the network name.