-
Notifications
You must be signed in to change notification settings - Fork 50
[8/n] [reconfigurator] add target release generation to blueprint #8199
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
[8/n] [reconfigurator] add target release generation to blueprint #8199
Conversation
Created using spr 1.3.6-beta.1
Created using spr 1.3.6-beta.1
Created using spr 1.3.6-beta.1
Created using spr 1.3.6-beta.1
dev-tools/reconfigurator-cli/tests/output/cmds-set-remove-mupdate-override-stdout
Show resolved
Hide resolved
Created using spr 1.3.6-beta.1
nexus/types/src/deployment.rs
Outdated
/// * the target release is ignored in favor of the install dataset | ||
/// * this field is set to 6 | ||
/// | ||
/// Once the target release generation is updated to 6 or higher, |
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.
The wording on this is correct but I read it incorrectly the first time through, because "the target release generation" is pretty similar to the name of this field; I was confused about how the target release generation might be set to 6 in the future when we've already set this field to 6. The event we're waiting for here is "an operator sets a new target release" (which will necessarily bump the generation number up to 6), right? And we also have to have cleared all the mupdate overrides in the meantime (or as a part of that new release being set)?
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.
I've updated it to have a more active voice:
/// Once an operator sets a new target release, its generation will be 6 or
/// higher. Reconfigurator will then know that it is back in charge of
/// driving the system to the target release.
And we also have to have cleared all the mupdate overrides in the meantime (or as a part of that new release being set)?
I believe that's right, yes.
Created using spr 1.3.6-beta.1
As described in RFD 556, we need this field as a backstop against Nexus overriding a freshly-conducted mupdate.
There is small semantic change here compared to RFD 556, though not one of much consequence:
This has two advantages:
target_release_minimum_generation
no longer needs to be anOption<Generation>
; it can be aGeneration
instead. That's because we always insert a generation 1 in the target_release table as "unspecified", meaning to use the install dataset. So setting this field to generation 1 just means "use the install dataset".