Hi Gerry,

You may want to try this -  Replace variables as per your setup

---
- hosts: localhost
vars_files:
- vcsim_vars.yml
tasks:
- name: Gather all VMs information
vmware_vm_info:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
validate_certs: no
register: all_vm_info
delegate_to: localhost

- name: Get a list of all VMs
set_fact:
all_vm: "{{ all_vm_info.virtual_machines | json_query(query) }}"
vars:
query: "[*].guest_name"
- name: Delete all snapshot of all VMs
vmware_guest_snapshot:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
validate_certs: no
datacenter: '{{ datacenter }}'
name: '{{ item }}'
folder: "/{{ datacenter }}/vm"
state: remove_all
with_items: "{{ all_vm }}"
delegate_to: localhost



On Mon, Dec 30, 2019 at 9:13 PM Gerry Maddock <[email protected]> wrote:

> I've tried first running vmware_vm_info to get all vm's and debug from
> that shows all vms allong with other info on the vm's. I would like to loop
> the "guest_name" into the above snapshot removal using with_item, but not
> having any luck so far. I may be going at this the wrong way. Any help is
> appreciated,
>
> On Monday, December 30, 2019 at 8:53:01 AM UTC-5, Gerry Maddock wrote:
>>
>> Hello all, I have been using Ansible to manage snapshots for single
>> specified vm's. Is there a way to have Ansible remove snapshots for all
>> vm's in Vmware datacenter? If this is posssible, would you mind providing a
>> play book example?
>>
>> Below is an example where I remove a snapshot from a single vm:
>>
>> - name: VM Remove Snapshot
>>   hosts: localhost
>>   gather_facts: false
>>   connection: local
>>   vars:
>>     vcenter_hostname: vspherefqdn
>>     vcenter_user: ansiblesusername
>>     vcenter_pass: changeme
>>     esxhost: 192,168.1.100
>>     datastore: LUN01
>>     name: "{{ vm_name }}"
>>     notes: Ansible Test
>>     dumpfacts: False
>>   tasks:
>>     - name: Remove all snapshots
>>       vmware_guest_snapshot:
>>         validate_certs: False
>>         hostname: "{{ vcenter_hostname }}"
>>         username: "{{ vcenter_user }}"
>>         password: "{{ vcenter_pass }}"
>>         datacenter: TST1
>>         name: "{{ name }}"
>>         folder: ''
>>         state: remove_all
>>       delegate_to: localhost
>>
>> --
> You received this message because you are subscribed to the Google Groups
> "Ansible Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/64304818-f49e-4151-927e-5b854d47e167%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/64304818-f49e-4151-927e-5b854d47e167%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>


-- 
Thanks,
Abhijeet Kasurde

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/CAFwWkHpLSxrgQX%3DnB43ACVrfsdQnXiyUbN3xyScbpv6ZYgVJLg%40mail.gmail.com.

Reply via email to