Advertisement
Guest User

ansiblecode124

a guest
Jan 15th, 2019
2,779
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 2.51 KB | None | 0 0
  1. ---
  2. - hosts: etcdtmp
  3.   gather_facts: true
  4.   connection: local
  5.   user: remote
  6.   become: true
  7.  
  8.   vars_prompt:
  9.     - name: "vcenter_hostname"
  10.       prompt: "Enter vcenter hostname"
  11.       private: no
  12.       default: "gs02vc01.corp.example.com"
  13.     - name: "vcenter_username"
  14.       prompt: "Enter vcenter username"
  15.       private: no
  16.       default: "username@corp.example.com"
  17.     - name: "vcenter_password"
  18.       prompt: "Enter vcenter password"
  19.       private: yes
  20.       confirm: no
  21.     - name: "notes"
  22.       promt: "Enter notes for new VMS"
  23.       private: no
  24.       default: "From Ansible"
  25.     - name: "datacenter"
  26.       promt: "Enter Datacenter name"
  27.       private: no
  28.       default: "Tampa"
  29.     - name: "vcenter_folder"
  30.       promt: "Enter folder name for VMS"
  31.       private: no
  32.       default: "k8s"
  33.     - name: "vcenter_cluster"
  34.       promt: "Enter cluster name"
  35.       private: no
  36.       default: "GS02 Cluster"
  37.   tasks:
  38.     - name: Clone a virtual machine from Linux template and customize
  39.       vmware_guest:
  40.         hostname: "{{ vcenter_hostname }}"
  41.         username: "{{ vcenter_username }}"
  42.         password: "{{ vcenter_password }}"
  43.         validate_certs: no
  44.         datacenter: "{{ datacenter }}"
  45.         state: present
  46.         folder: "{{ vcenter_folder }}"
  47.         template: "{{ template }}"
  48.         name: "{{ inventory_hostname }}"
  49.         cluster: "{{ vcenter_cluster }}"
  50.         networks:
  51.           - name: "{{ peer_network }}"
  52.             ip: "{{ peer_ip }}"
  53.             netmask: "{{ peer_mask }}"
  54.             gateway: "{{ peer_gw }}"
  55.         wait_for_ip_address: True
  56.         customization:
  57.           domain: "{{ guest_domain }}"
  58.           dns_servers:
  59.            - "{{ peer_dns1 }}"
  60.             - "{{ peer_dns2 }}"
  61.           dns_suffix:
  62.            - "{{ guest_domain }}"
  63.       delegate_to: localhost
  64.       register: vmres
  65.  
  66.     - name: add to ansible hosts file
  67.       lineinfile:
  68.         dest: ./inventory/hosts
  69.         insertafter: '^\[{{ hostname_groups }}\]'
  70.         line: '{{ item }}'
  71.       with_items: '{{play_hosts}}'
  72.       run_once: true
  73.       delegate_to: localhost
  74.  
  75. - hosts: dns
  76.   gather_facts: yes
  77.   vars_prompt:
  78.      - name: "domainuser_passwd"
  79.        prompt: "Enter domain password"
  80.        private: yes
  81.   tasks:
  82.     - name: Debug result
  83.       debug:
  84.         var: hostvars['localhost']['vmres']
  85.  
  86.     - name: Run
  87.       win_command: powershell.exe -
  88.       args:
  89.         stdin: |
  90.               echo "{{ hostvars['localhost'] }}" >> C:\Windows\Temp\ansible.txt
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement