This series is an attempt to add a mode of virt-v2v operation where it
leaves the config and disk image conversion, rollback on errors,
registering with the destination hypervisor, etc. to a third-party
toolset, and performs only tuning of the guest OS to run in the
KVM-based hypervisor.
The first 10 patches are just refactoring and rearrangement of the code,
factoring the implementation details out into separate functions (one
logical step at a time). This results in main() compacted from a few
hundreds lines to a few dozens containing only coarse steps and making
the scenarios easy to follow.
The last three patches add the new mode, the description of it in the
man page, and a test for it, resp.
Roman Kagan (13):
v2v: factor out opening input VM
v2v: factor out overlay creation
v2v: factor out populating targets list
v2v: factor out size checks
v2v: factor out actual guest transformation
v2v: factor out determining the guest firmware
v2v: factor out copying of output data
v2v: factor out preserving overlays for debugging
v2v: drop redundant umount_all() and shutdown()
v2v: factor out opening and populating guestfs handle
v2v: add --in-place mode
v2v: document --in-place
v2v: add test for --in-place
---
changes from v2:
- top-down arrangement of function defitinions
- branching of scenarios using a dedicated type
changes from v1:
- include refactoring patches before the --in-place ones
- split --in-place patches into code, doc, and test for easier review
(bisectability maintained)
v2v/Makefile.am | 1 +
v2v/cmdline.ml | 7 +-
v2v/test-v2v-in-place.sh | 119 +++++++++
v2v/v2v.ml | 674 +++++++++++++++++++++++++----------------------
v2v/virt-v2v.pod | 17 ++
5 files changed, 509 insertions(+), 309 deletions(-)
create mode 100755 v2v/test-v2v-in-place.sh
--
2.4.3