That may work since the file will be tmp until finished being written. I
was also just looking at the ovirt event info module
https://docs.ansible.com/ansible/latest/modules/ovirt_event_info_module.html#ovirt-event-info-module
--
I was thinking that I might be able to watch the event info wait on the
event which shows the export was successful i.e. Vm X was exported
successfully as a Virtual Appliance to path....

There is also the event index which could be useful in terms of getting a
starting point for the event search.

I thought there would be a module or API for the running oVirt task list
but so far I haven't been able to find any way to get info on oVirt tasks.

I'll see if I can get something working with your suggestion and keep
looking at API and ansible modules to see which make sense to use.

I'm also worried that timeout issues may occur if I start waiting in some
cases an hour or more for very large VM backups to complete before moving
on to the next with ansible.

Thanks!

Jayme

On Thu, Jan 23, 2020 at 10:00 AM Jan Zmeskal <jzmes...@redhat.com> wrote:

> Hi Jayme,
>
> here's my idea. I haven't tested it but I believe it should work.
> 1. Create a new task file (let's call it export_vm.yaml) and include two
> tasks in there:
> 1.1. First task uses ovirt_vm module (pretty much what you already have)
> to export VM
> 1.2. Second task uses wait_for
> <https://docs.ansible.com/ansible/latest/modules/wait_for_module.html>
> module (specifically its path parameter) to wait until the OVA file in
> /backup exists
> 2. Loop over those two tasks as explained here
> <https://ericsysmin.com/2019/06/20/how-to-loop-blocks-of-code-in-ansible/>
> .
>
> Hope this helps.
>
> Jan
>
> On Wed, Jan 22, 2020 at 4:15 PM Jayme <jay...@gmail.com> wrote:
>
>> I wrote a simple task that is using the ovirt_vm module
>> https://docs.ansible.com/ansible/latest/modules/ovirt_vm_module.html --
>> it essentially loops over a list of vms and exports them to OVA.
>>
>> The problem I have is the task is deemed changed once it successfully
>> submits the export task to oVirt. This means that if I gave it a list of
>> 100 Vms I believe it would start an export task on all of them. I want to
>> prevent this and have it only export one VM at a time. In order to do this
>> I believe I will need to find a way for the task to wait and somehow verify
>> that the export was completed before submitting a task for the next VM
>> export.
>>
>> Any ideas?
>>
>> - name: Export the VM
>>   ovirt_vm:
>>     auth: "{{ ovirt_auth }}"
>>     name: "{{ item }}"
>>     state: exported
>>     cluster: default
>>     export_ova:
>>         host: Host0
>>         filename: "{{ item }}"
>>         directory: /backup/
>>   with_items: "{{ vms }}"
>>
>> _______________________________________________
>> Users mailing list -- users@ovirt.org
>> To unsubscribe send an email to users-le...@ovirt.org
>> Privacy Statement: https://www.ovirt.org/site/privacy-policy/
>> oVirt Code of Conduct:
>> https://www.ovirt.org/community/about/community-guidelines/
>> List Archives:
>> https://lists.ovirt.org/archives/list/users@ovirt.org/message/PXYAQ7YEBQCUWCAQCFAFXB3545LNB23X/
>>
>
>
> --
>
> Jan Zmeskal
>
> Quality Engineer, RHV Core System
>
> Red Hat <https://www.redhat.com>
> <https://www.redhat.com>
>
_______________________________________________
Users mailing list -- users@ovirt.org
To unsubscribe send an email to users-le...@ovirt.org
Privacy Statement: https://www.ovirt.org/site/privacy-policy/
oVirt Code of Conduct: 
https://www.ovirt.org/community/about/community-guidelines/
List Archives: 
https://lists.ovirt.org/archives/list/users@ovirt.org/message/XMT6J3LDZGWTI42PLLX2RLE64YDBERYT/

Reply via email to