[virt-tools-list] [virt-install PATCH v2 00/14] Add support for unattended installations
Cole Robinson
crobinso at redhat.com
Wed Mar 6 14:59:20 UTC 2019
On 3/6/19 1:55 AM, Fabiano Fidêncio wrote:
> On Tue, Mar 5, 2019 at 10:50 PM Cole Robinson <crobinso at redhat.com> wrote:
>>
>> On 2/22/19 3:40 AM, Fabiano Fidêncio wrote:
>>> This series add support for *network* (--location) unattended
>>> installations of a few OSes that libosinfo/osinfo-db provides support
>>> for:
>>> - Fedora;
>>> - CentOS;
>>> - RHEL;
>>> - Debian;
>>> - openSUSE;
>>> - Ubuntu*;
>>>
>>> *: Ubuntu needs some pending patches for osinfo-db;
>>>
>>> One example** of how to perform a unattended installation is:
>>> `virt-install \
>>> --name fedora29 \
>>> --os-variant fedora29 \
>>> --unattended profile=desktop`
>>>
>>> **: https://www.redhat.com/archives/libosinfo/2019-February/msg00173.html
>>> is needed in order to have the example above working properly
>>>
>>
>> Thanks for the work and sorry for the review delay. I've pushed this
>> series now with some minor pylint and bug fixes sprinkled into your patches.
>>
>> On top I added some more work, the main chunk was moving most of the
>> osdict.py into their own classes/functions in unattended.py, and adding
>> some unit tests to cover most of the virtinst/ bits
>>
>>> The TODO list:
>>> - Work on Linuxes medias ("--cdrom") unattended installations:
>>> This will make me bump libosinfo dep to 1.4.0 and we'll also require
>>> some patches for osinfo-db;
>>
>> Instead of bumping the dep, let's just throw an error if an unattended
>> install is attempted but libosinfo is too old to work. Look at
>> unattended.py OSInstallScript __init__ for an example
>>
>>> - Work on Windowses medias ("--cdrom") unattended installations:
>>> - Tests, tests, tests ...
>>> - Update man-pages
>>>
>>
>> Another piece to consider: the script is generated in a predictable path
>> ~/.cache/virt-manager/fedora.ks for example. It's not likely to happen
>> but two virt-install runs could overwrite each others scripts here. I'd
>> expect the generated filename to be sometime like tmpfile output.
>
> One thing that we could easily do is generate the script in
> ~/.cache/virt-manager/<random_generated_per_vm_name>/fedora.ks ...
>
> The problem we had in the past, if my memory is not playing tricks on
> me, is that some distros (or Windows?) expected a specific filename.
> Although it my not apply to initrd injection.
>
>>
>> It wasn't clear to me how to actually ask libosinfo to write to a
>> different pathname though, and we would likely need to extend the initrd
>> inject logic to handle file rename before injection or something like
>> that. But it's worth considering
>
> If the generating a <random_generated_per_vm_name> works well, we can
> just generate it here[0] and be happy as it wouldn't colide:
>
> https://github.com/virt-manager/virt-manager/blob/master/virtinst/unattended.py#L243
>
> Does this approach look okay?
>
I think so, but we'd need to make sure to clean up the randomly created
directories as well which will need adjustments to the cleanup routine
too. It can wait until the windows support is on list though
- Cole
More information about the virt-tools-list
mailing list