Hi, I suggest sending questions to ovirt-users so others could find answers as well as to allow others who might know better chime in as well
As to your question, something like this works for me: vms_service = connection.system_service().vms_service() vm_service = vms_service.vm_service('vm-id') affinity_labels = vm_service.affinity_labels_service().list() for affinity_label in affinity_labels: hosts = connection.follow_link(affinity_label.hosts) for host in hosts: print(connection.follow_link(host).name) (I am not sure where exactly the problem is in your code) On Mon, Feb 15, 2021 at 2:32 PM Lavi Bochnik <lavi.boch...@gmail.com> wrote: > > Hello Benny, > > Not sure if I can email you directly, but you helped me once. > I have some VM's which are labeled with specific affinity. > Via API I would like to get a VM affinity label, in order to later get the > hosts defined under that affinity. > I tried many ways as: > vm = vms_service.list(search='<vm_name>')[0] > print(vm.affinity_labels) > > or: > for affinity_label in affinity_labels: > print("%s:" % affinity_label.name) > for vm_link in connection.follow_link(affinity_label.vms): > vm = connection.follow_link(vm_link) > print(" - %s" % vm.name) > > Getting an href error: Error: The URL > '/ovirt-engine/api/affinitylabels/0d68b36e-455a-4054-9958-0503d54a18db/vms' > isn't compatible with the base URL of the connection > > Href's are looking fine, as: > In [77]: for x in affinity_labels_service.list(): > ...: print(x.href) > > /ovirt-engine/api/affinitylabels/0d68b36e-455a-4054-9958-0503d54a18db > /ovirt-engine/api/affinitylabels/862df742-fdc4-4eb0-933c-027729e2187d > /ovirt-engine/api/affinitylabels/686d96a6-0c9c-4fb7-b453-a79cbd48790b > /ovirt-engine/api/affinitylabels/6d42df24-c4b1-45e7-8029-0ce26b8ed73d > > Or this: > > 1 for affinity_label in affinity_labels: > ----> 2 for h in connection.follow_link(affinity_label.hosts): > 3 print(h) > 4 > 5 > > /usr/local/lib64/python3.6/site-packages/ovirtsdk4/__init__.py in > follow_link(self, obj) > 782 raise Error( > 783 "The URL '%s' isn't compatible with the base URL of > the " > --> 784 "connection" % href > 785 ) > 786 > > Error: The URL > '/ovirt-engine/api/affinitylabels/0d68b36e-455a-4054-9958-0503d54a18db/hosts' > isn't compatible with the base URL of the connection > > Not clear what is the right way to get a VM affinity hosts list. > > Thanks, > Lavi _______________________________________________ Users mailing list -- users@ovirt.org To unsubscribe send an email to users-le...@ovirt.org Privacy Statement: https://www.ovirt.org/privacy-policy.html oVirt Code of Conduct: https://www.ovirt.org/community/about/community-guidelines/ List Archives: https://lists.ovirt.org/archives/list/users@ovirt.org/message/EQEXUSXXEGERR3KAWCKJ2E4LLMPDOA5I/