Guest User

Untitled

a guest
Apr 14th, 2018
151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.00 KB | None | 0 0
  1. ---
  2. - hosts: localhost
  3. gather_facts: false
  4. become: false
  5. # vars:
  6. # ansible_python_interpreter: /usr/local/bin/python2
  7. tasks:
  8. - name: Managing VMs
  9. vmware_guest:
  10. annotation: Ansible Provisioned
  11. cluster: "{{ vcenter_cluster }}"
  12. customization: "{{ item['customization']|default(omit) }}"
  13. datacenter: "{{ vcenter_datacenter }}"
  14. disk: "{{ item['disks']|default(omit) }}"
  15. folder: "/{{ vcenter_datacenter }}/vm"
  16. force: true
  17. guest_id: "{{ item['guest_id'] }}"
  18. hardware: "{{ item['vm_hardware']|default(omit) }}"
  19. hostname: "{{ vcenter_host }}"
  20. name: "{{ item['name'] }}"
  21. networks: "{{ item['networks']|default(omit) }}"
  22. password: "{{ vcenter_password }}"
  23. template: "{{ item['template']|default(omit) }}"
  24. username: "{{ vcenter_username }}"
  25. state: "{{ item['state'] }}"
  26. validate_certs: false
  27. wait_for_ip_address: |
  28. {% if item['template'] is defined %}true{% else %}false{% endif %}
  29. with_items: "{{ vms }}"
  30.  
  31. - name: Capturing VM Info
  32. vmware_guest_facts:
  33. datacenter: "{{ vcenter_datacenter }}"
  34. folder: "/{{ vcenter_datacenter }}/vm"
  35. hostname: "{{ vcenter_host }}"
  36. name: "{{ item['name'] }}"
  37. password: "{{ vcenter_password }}"
  38. username: "{{ vcenter_username }}"
  39. validate_certs: false
  40. register: _vms_info
  41. with_items: "{{ vms }}"
  42. when: item['state']|lower == "present"
  43.  
  44. - name: Generating Dynamic Group
  45. add_host:
  46. ansible_host: "{{ item['instance']['ipv4'] }}"
  47. groups: provisioned_vms
  48. mac_address: "{{ item['instance']['hw_eth0']['macaddress_dash'] }}"
  49. name: "{{ item['instance']['hw_name'] }}"
  50. uuid: "{{ item['instance']['hw_product_uuid'] }}"
  51. with_items: "{{ _vms_info['results'] }}"
  52. when: >
  53. item['skipped'] is not defined
  54.  
  55. - name: Generating Inventory
  56. template:
  57. src: ./hosts.inv.j2
  58. dest: ./hosts.inv
Add Comment
Please, Sign In to add comment