feat: update nautobot with enriched data updated by inspect hooks #1495
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
By leveraging Ironic's native notification system (documented at Ironic Notifications),
we can react to state changes to keep Nautobot in sync.
Subscribe to specific Ironic notification events:
Nodes:
baremetal.node.update.end / baremetal.node.create.end → create or update the node in Nautobot
baremetal.node.delete.end → remove the node from Nautobot
Ports:
baremetal.port.update.end / baremetal.port.create.end → create or update the port in Nautobot
baremetal.port.delete.end → remove the port from Nautobot
Portgroups:
baremetal.portgroup.update.end / baremetal.portgroup.create.end → create or update the portgroup in Nautobot
baremetal.portgroup.delete.end → remove the portgroup from Nautobot
We focus on .end events since those represent completed operations with consistent state, and handle create/update together since a newly created node may not have complete information initially.