diff options
author | spwhitton@7d7e499ce40ede417d6cf271153a076a7d7e8e67 <spwhitton@web> | 2018-07-19 17:45:45 +0000 |
---|---|---|
committer | admin <admin@branchable.com> | 2018-07-19 17:45:45 +0000 |
commit | ca92ef7a8d76fd28dcf620df27339d9c6e39609b (patch) | |
tree | e7448b1fa542b790f12fe82f7ee61afe73823cb2 /doc | |
parent | ece3849c9df1acc48a40c9d3d2e627fb9f33a8e0 (diff) |
post TODO for feedback
Diffstat (limited to 'doc')
-rw-r--r-- | doc/todo/support_for_libvirt_KVM_VMs.mdwn | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/doc/todo/support_for_libvirt_KVM_VMs.mdwn b/doc/todo/support_for_libvirt_KVM_VMs.mdwn new file mode 100644 index 00000000..529cf721 --- /dev/null +++ b/doc/todo/support_for_libvirt_KVM_VMs.mdwn @@ -0,0 +1,27 @@ +I've been thinking about how to add support for libvirt VMs to +propellor. TTBOMK setting up the VMs is a matter of creating some +files in /etc, so that part is straightforward; might not want very +much abstraction in propellor at all. The interesting part is +creating the corresponding disk images. + +I first thought that I could just extend propellor's existing support +for generating disk images by debootstrapping in a chroot and then +generating an image based on that chroot. It would just be a matter +of using `.qcow2` images rather than `.img`. But the problem with +this is that once the VM is in use, propellor should not just be +overwriting the `.qcow2` file. So something different is needed. + +What I have in mind is a conditional property that works something +like this: + + ifM ( doesFileExist "/path/to/image.qcow2" + , debootstrapTheChrootAndPackIntoQcow2File theHost + , conducts [theHost] `requires` KVM.booted theHost + ) + +where `theHost :: Host` and either the user's libvirt config or some +property somewhere ensures it can be SSHed to from localhost. + +Does this seem like the right approach? + +--spwhitton |