Le 10/05/2017 à 10:29, Ondra Machacek a écrit :
I want a list of vms sorted by any possible attributes, i.e. sorted by datacenter or cluster, not only by status.pattern: "status = down"ca_file: /etc/pki/ovirt-engine/ca.pempassword: passwordusername: admin@internalurl: https://ovirt.example.com/auth:ovirt_vms_facts:- name: Get stopped VMsFor example to get only stopped VMs, you can use following:Not sure I understand. You can use Ansible module to list VMs, youcan use ovirt_vms _facts[1] module.
ovirt-engine/api
- For example, ovirt_vms_facts doesn't allow to get the datacenter the vm belongs to , and the pattern filter doesn't return a list of vms as expected:
- hosts: localhost
connection: local
tasks:
- name: Get stopped VMs
ovirt_vms_facts:
auth:
url: https://acore.v100.abes.fr/ovirt-engine/api
username: admin@internal
password: ovirt123
insecure: true
pattern: name=centos* and cluster=west
- debug:
var: ovirt_vms
- shell: echo "{{ ovirt_vms.name }}"
How can I successfully display this list of vms like described here :
name description returned type sample ovirt_vms List of dictionaries describing the VMs. VM attribues are mapped to dictionary keys, all VMs attributes can be found at following url: https://ovirt.example.com/ ovirt-engine/api/model#types/ .vm On success. list
list_vms.py could be what I expect, but vm.datacenter_name doesn't exist
- About the python SDK:
On Wed, May 10, 2017 at 10:13 AM, Nathanaël Blanchet <blanchet@abes.fr> wrote:
Thanks, I knew this python script, but I believed it was possible to do the same with an ansible module.
That's mean we need several tools to do different tasks, it is not a very convergent way to proceed... but it is feasable.
Le 10/05/2017 à 07:56, Ondra Machacek a écrit :
On Tue, May 9, 2017 at 6:52 PM, Nathanaël Blanchet <blanchet@abes.fr> wrote:
Hello,
I didn't find anyway to easy list all my vms thanks to the ansible modules...
I tried the ovirt4.py script which is able to list the whole facts, so vms list, when the number of them is small in a test datacenter, but in a production datacenter, I get an issue:
File "./ovirt4.py", line 262, in <module>
main()
File "./ovirt4.py", line 254, in main
vm_name=args.host,
File "./ovirt4.py", line 213, in get_data
vms[name] = get_dict_of_struct(connection, vm)
File "./ovirt4.py", line 185, in get_dict_of_struct
(device.name, [ip.address for ip in device.ips]) for device in devices
File "./ovirt4.py", line 185, in <genexpr>
(device.name, [ip.address for ip in device.ips]) for device in devices
TypeError: 'NoneType' object is not iterable
This error was fixed already, try to download latest ovirt4.py file.
The other way is to use fatcs[1] module.
[1] http://docs.ansible.com/ansible/ovirt_vms_facts_module.html
What is the simpliest way to get this basic information with sdk4??? (with sdk3 : ovirt-shell -E "list vms")
Please take a look at the following example:
https://github.com/oVirt/ovirt-engine-sdk/blob/master/sdk/ examples/list_vms.py
--
Nathanaël Blanchet
Supervision réseau
Pôle Infrastrutures Informatiques
227 avenue Professeur-Jean-Louis-Viala
34193 MONTPELLIER CEDEX 5
Tél. 33 (0)4 67 54 84 55
Fax 33 (0)4 67 54 84 14
blanchet@abes.fr
_______________________________________________
Users mailing list
Users@ovirt.org
http://lists.ovirt.org/mailman/listinfo/users
-- Nathanaël Blanchet Supervision réseau Pôle Infrastrutures Informatiques 227 avenue Professeur-Jean-Louis-Viala 34193 MONTPELLIER CEDEX 5 Tél. 33 (0)4 67 54 84 55 Fax 33 (0)4 67 54 84 14 blanchet@abes.fr
-- Nathanaël Blanchet Supervision réseau Pôle Infrastrutures Informatiques 227 avenue Professeur-Jean-Louis-Viala 34193 MONTPELLIER CEDEX 5 Tél. 33 (0)4 67 54 84 55 Fax 33 (0)4 67 54 84 14 blanchet@abes.fr