Indeed. A felt like there was need for a simple way to backup ovirt vms. Ansible may just be the answer. After some more testing of the playbook I plan to publish a blog post/guide on the subject so others can use it.
On Fri, Jan 24, 2020 at 4:42 AM Jan Zmeskal <jzmes...@redhat.com> wrote: > Hi Lars, you might find this email thread interesting: > https://lists.ovirt.org/archives/list/users@ovirt.org/thread/PXYAQ7YEBQCUWCAQCFAFXB3545LNB23X/ > > Jayme is trying to solve pretty much the same problem as you - although > he's using the Ansible approach instead of SDK. Feel free to join that > conversation. At this point it seems like he might have found a good > solution, but he needs to test it. > > Jan > > On Fri, Jan 24, 2020 at 8:33 AM <lars.sto...@bvg.de> wrote: > >> hi, >> >> I tryed this with API 4.2 and 4.3. >> purpose of the following script is, to export a given list of vm as OVA >> one after another. >> To reach that i need to monitor the job status and pause the script till >> the actual export is done. >> The script works fine, but not the restriction of the returned jobs to >> the one spcificaly job i need to monitor. >> Therefor the script pauses on *any* running job. >> the working script: >> >> #!/usr/bin/python >> >> import logging >> import time >> >> import ovirtsdk4 as sdk >> import ovirtsdk4.types as types >> >> connection = sdk.Connection( >> url='https://ovirtman12/ovirt-engine/api', >> username='admin@internal', >> password='***', >> ca_file='/etc/pki/ovirt-engine/ca-ovirtman12.pem', >> ) >> >> >> hosts_service = connection.system_service().hosts_service() >> hosts = hosts_service.list()[0] >> >> vms_service = connection.system_service().vms_service() >> vms = vms_service.list(search='name=blxlic954') >> >> for vm in vms: >> # print("%s (%s)" % (vm.name, vm.id)) >> vm_service = vms_service.vm_service(vm.id) >> start_time = (time.strftime('%Y%m%d_%H%M%S', >> time.localtime(int(time.time())))) >> vm_service.export_to_path_on_host( >> host=types.Host(id=hosts.id), >> directory='/nfs_c3/export', >> filename=('%s_backup_%s.ova' % (vm.name, start_time)), >> wait=True, >> ) >> # time.sleep(5) >> jobs_service = connection.system_service().jobs_service() >> jobs = jobs_service.list(search='') >> for job in jobs: >> print(job.id, job.description) >> # job = jobs_service.job_service(job.id).get() >> while job.status == types.JobStatus.STARTED: >> time.sleep(10) >> job = jobs_service.job_service(job.id).get() >> print('job-status: %s' % (job.status)) >> >> connection.close() >> >> The line >> jobs = jobs_service.list(search='') >> works fine as long as the search pattern is empty. >> >> if i try to restrict the results returned like this: >> jobs = jobs_service.list(search='description=*blxlic954*') >> i get an error: >> >> bad sql grammar [select * from (select * from job where ( job id in >> (select distinct job.job id from job where ( ) )) order by start time >> asc) as t1 offset (1 -1) limit 2147483647]; nested exception is >> org.postgresql.util.psqlexception: error: syntax error at or near ")" >> >> looks like the 'where' clause is not filled correctly. >> >> Am i wrong with my syntax or ist that a bug? >> Is there another way to get the correct job id/status? >> _______________________________________________ >> 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/ZVFUE32ORCMN7EBRR7PXKRWAJJV4MAIB/ >> > > > -- > > 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/YRKMLOYWOY24WVYJZBI77ZDDOMKVAIPP/