-
Notifications
You must be signed in to change notification settings - Fork 413
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
Bug 1691660: pkg/controller: always use the OSImageURL from the CVO #475
Bug 1691660: pkg/controller: always use the OSImageURL from the CVO #475
Conversation
/retest |
Taking a look at this, there've been a couple PRs that change the render/controller config functions so refamiliarizing myself. |
/approve |
I'm uncertain about landing this as well, but w/o this (assuming it works and I can add e2e) customers and users will be able to upgrade/downgrade the baseos through MCs which id love to avoid |
q: are we sure we don't want to allow this at all? just wondering before we go to the trouble of landing this and then having it reversed.. that said, i think this should be held until later when the os upgrades are healthy generally. |
I don't see any real value in allowing them doing something like that, we want to control upgrades (generally) through CVO, i've always seen osimageurl in the MCs like something for testing for now, but if you all see a value in allowing users doing this, yeah, let's defer (though, do we provide them with oscontainers? will they have access to the registry containing those? |
This has become more relevant in some hours as upgrades should follow the pattern where master are always upgraded before workers...we can play and check what users pass us of course and compare between pools but I feel the cleanest way to do it is to just forbid osimageurl altogether |
question now is, since #480, do we want to go out with the possibility for users to do this #183 (comment) and then break them? |
outOSImageURL = config.Spec.OSImageURL | ||
mc := configs[idx] | ||
if mc.Spec.OSImageURL != osImageURL { | ||
glog.Infof("Detected OSImageURL %q in MachineConfig %q which is not what provided by the CVO %q", mc.Spec.OSImageURL, mc.Name, osImageURL) |
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.
nit: what is provided
ad39d8f
to
0edf8d0
Compare
removing WIP here, up for further discussion as I do really feel we shouldn't really expose this |
2e6efb2
to
d6be234
Compare
I think my vote on this is to land tests for OS updates first. The code here looks reasonable but it's also a nontrivial change; we know today that |
I understand that but on the other hand...an admin really has to jump through hoops today to actually override |
I'm super ok with this of course |
One thing I think we could envision now potentially is adding a new Or alternatively, move our rendered ones into a new |
The second option sounds very reasonable to me :) (having a rendered MC CRD) |
Related to https://bugzilla.redhat.com/show_bug.cgi?id=1691660 now. This PR should land to also prevent QE test upgrades through osImageURL which is: unexpected and unsupported IMO. QE should test by creating a payload overriding machine-os-content and that should be it. Testing with osImageURL isn't real testing, just excercising a code that is excercised correctly through a normal upgrade test. I'd also add that it would be safer to go out w/o allowing osimageurl and then, if we change design or our mind allowing it. |
d6be234
to
924d93c
Compare
8ab36f5
to
9558238
Compare
This is rebased now and ready to go! |
/retest |
/retest |
Signed-off-by: Antonio Murdaca <[email protected]>
9558238
to
a5af821
Compare
/retest |
1 similar comment
/retest |
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: cgwalters, runcom The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Signed-off-by: Antonio Murdaca [email protected]
- What I did
Always use the osimageurl coming from the CVO.
close #465
- How to verify it
Added a unit test to cover this change
- Description for the changelog