Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Reconfigurator: Record external networking allocations when realizing…
… a blueprint (#5045) This PR expands blueprint execution to record external IPs and created NICs for Nexus, Boundary NTP, and External DNS in crdb _before_ sending new zone requests to sled-agents. The implementation has a very obvious TOCTOU race, but I think it's okay (as explained in the comments inline). If two Nexuses try to realize the same blueprint simultaneously and both see no records present, only one will succeed to insert, and the other will spuriously fail. Assuming that failure causes a retry, subsequent attempts to realize the same blueprint will succeed, as the required records will be present. If this seems wrong, please holler! I'd like to give this a spin on either madrid or one of the software testbeds before merging, but I think this is ready for review.
- Loading branch information