community
community copied to clipboard
design-proposal: Introduce LiveUpdate support for instance types
What this PR does / why we need it:
The VM Rollout Strategy feature introduced in KubeVirt 1.2 now allows for specific changes made to a running VM to propagate to the VMI without a restart. This design proposal covers extending this support to cover changes made to the referenced instance type or preference of a running VM.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR. Approvers are expected to review this list.
- [ ] Design: A design document was considered and is present (link) or not required
- [ ] PR: The PR description is expressive enough and will help future contributors
- [ ] Code: Write code that humans can understand and Keep it simple
- [ ] Refactor: You have left the code cleaner than you found it (Boy Scout Rule)
- [ ] Upgrade: Impact of this change on upgrade flows was considered and addressed if required
- [ ] Testing: New code requires new unit tests. New features and bug fixes require at least on e2e test
- [ ] Documentation: A user-guide update was considered and is present (link) or not required. You want a user-guide update if it's a user facing feature / API change.
- [ ] Community: Announcement to kubevirt-dev was considered
Release note:
NONE
Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all
/cc @vladikr
FWIW I took a look at the code and I think this should be pretty straight forward if we apply instance types and preferences before doing the comparisons. Any thoughts?
https://github.com/kubevirt/kubevirt/pull/11455 WIP code here that seems to work.
@lyarwood Thanks! I think it makes a lot of sense to do it now.
@vladikr would you mind taking another look at this now it's marked as ready to review?
The PoC code is under https://github.com/kubevirt/kubevirt/pull/11455
@vladikr if you have time this week could you take another look at this? The implementation PR is also about to land https://github.com/kubevirt/kubevirt/pull/11455 if you also have time.
/approve Thanks, very nice! And apologies for the delay.
[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: vladikr
The full list of commands accepted by this bot can be found here.
The pull request process is described here
- ~~OWNERS~~ [vladikr]
Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment