Advertisement
Guest User

ansiblecode125

a guest
Jan 15th, 2019
1,162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 2.60 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: Debug First
  67.       debug:
  68.         var: hostvars['localhost']['vmres']
  69.  
  70.     - name: add to ansible hosts file
  71.       lineinfile:
  72.         dest: ./inventory/hosts
  73.         insertafter: '^\[{{ hostname_groups }}\]'
  74.         line: '{{ item }}'
  75.       with_items: '{{play_hosts}}'
  76.       run_once: true
  77.       delegate_to: localhost
  78.  
  79. - hosts: dns
  80.   gather_facts: yes
  81.   vars_prompt:
  82.      - name: "domainuser_passwd"
  83.        prompt: "Enter domain password"
  84.        private: yes
  85.   tasks:
  86.     - name: Debug result
  87.       debug:
  88.         var: hostvars['localhost']['vmres']
  89.  
  90.     - name: Run
  91.       win_command: powershell.exe -
  92.       args:
  93.         stdin: |
  94.              echo "{{ hostvars['localhost'] }}" >> C:\Windows\Temp\ansible.txt
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement