-
Notifications
You must be signed in to change notification settings - Fork 7
feat: Nautobot operator #1425
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?
feat: Nautobot operator #1425
Conversation
cardoe
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall the change is good but too big to really review line by line or file by file. Let's rebase this and get it running in the dev environment and see it in action.
How do we define the CRD? From an object or by writing the YAML? I think we'll need to update the deployment docs around this going forward as well.
neutron's docs state that start-time needs to be defined. Increase the number of workers as well.
When neutron starts up it is cleaning up OVN and it might take some extra time to be ready so increase the amount of time.
This was pinned only for macOS testing of the code base and not an actual runtime dependency so remove it to avoid version conflicts in the actual deployed code.
If we are able to read the physical_network from the port binding information then we should do that over looking it up. Uses: https://review.opendev.org/c/openstack/ironic/+/964570
Switched to using more of a two part build in the containers to install everything in the build layer and then copy it into the runtime container to shrink them further. Switch to using uv exclusively to make it consistent with the build tooling we use. Add the OpenStack constraint file to ensure we do not upgrade to too new of a version when installing additional dependencies.
The version of sushy that our current version of Ironic (2025.2) depends on and is included in our container has sushy-oem-idrac included in it and the Ironic code base will use it over sushy-oem-idrac. So there is no point in installing this.
Summary
This PR enhances the Nautobot operator so it can read Nautobot credentials from a referenced Secret and load device-type data from one or more ConfigMaps.
What this change does
Secretreferenced in the custom resource.How it works
Nautobotcustom resource (example YAML below).Usage example
PS
deviceTypeRefentries to load device types from several ConfigMaps.Rough Diagram