Discretionary external DNS zones#6581
Merged
Merged
Conversation
External DNS addresses are not yet in the policy, so we must grovel for them in the parent blueprint. See `test_reuse_external_dns_ips_from_expunged_zones()`.
3562f3d to
0fd9b5c
Compare
davepacheco
reviewed
Sep 17, 2024
davepacheco
left a comment
Collaborator
There was a problem hiding this comment.
This is looking good! I have a few questions below about allocating datasets and addresses. And yeah it'd be good to get @jgallagher's eyes on this too.
jgallagher
reviewed
Sep 18, 2024
jgallagher
added a commit
that referenced
this pull request
Sep 18, 2024
The "Check the planning input" block of code needs to consider _all_ zones in the parent blueprint, including expunged zones. #6483 fixed the planner's ability to reuse external IPs from expunged zones, but accidentally made these checks incorrect, because it's certainly valid for the planning input to still have records for expunged zones. See #6581 (comment) for more context. We also get to remove the somewhat-awkward update_network_resources_from_blueprint() test helper that was needed in #6483 to make some tests pass (because we didn't realize the checks being performed here were wrong).
jgallagher
added a commit
that referenced
this pull request
Sep 18, 2024
The "Check the planning input" block of code needs to consider _all_ zones in the parent blueprint, including expunged zones. #6483 fixed the planner's ability to reuse external IPs from expunged zones, but accidentally made these checks incorrect, because it's certainly valid for the planning input to still have records for expunged zones. See #6581 (comment) for more context. We also get to remove the somewhat-awkward update_network_resources_from_blueprint() test helper that was needed in #6483 to make some tests pass (because we didn't realize the checks being performed here were wrong).
Fails the `planner_reuse_external_dns_ips_from_expunged_zones` test, but because of Nexus, not external DNS.
jgallagher
added a commit
that referenced
this pull request
Sep 18, 2024
…ng (#6599) The "Check the planning input" block of code needs to consider _all_ zones in the parent blueprint, including expunged zones. #6483 fixed the planner's ability to reuse external IPs from expunged zones, but accidentally made these checks incorrect, because it's certainly valid for the planning input to still have records for expunged zones. See #6581 (comment) for more context. We also get to remove the somewhat-awkward `update_network_resources_from_blueprint()` test helper that was needed to make some tests pass (because we didn't realize the checks being performed here were wrong).
Makes running out of external DNS address *not* be a fatal planning error. Requires relaxing the constraint that the requested number of zones equal the added number of zones. Also collect plain IP addresses for available DNS addresses, not floating IPs.
plotnick
commented
Sep 19, 2024
jgallagher
reviewed
Sep 24, 2024
jgallagher
approved these changes
Sep 24, 2024
jgallagher
left a comment
Contributor
There was a problem hiding this comment.
LGTM! Thanks for fighting all the dragons here.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
External DNS addresses are not yet in the policy (#3732), so we must grovel for them in the parent blueprint (and also a bit in the planning input). Most of the grubbiness here will go away when that's fixed; see the
TODO-cleanupnotes.Still validating on
a4x2, but otherwise ready for review.