From 9c4215bf50a5e9b6beae6fee2fc2ceea845133ae Mon Sep 17 00:00:00 2001 From: abrown38 Date: Fri, 14 Jun 2024 11:24:39 +0100 Subject: [PATCH] Create all common VMs in 1 loop --- ansible/playbooks/openstack-vms.yml | 51 ++--------------------------- ansible/vars/common.yml | 3 +- 2 files changed, 4 insertions(+), 50 deletions(-) diff --git a/ansible/playbooks/openstack-vms.yml b/ansible/playbooks/openstack-vms.yml index 7cdc108..c02e9e6 100644 --- a/ansible/playbooks/openstack-vms.yml +++ b/ansible/playbooks/openstack-vms.yml @@ -234,7 +234,7 @@ - name: Common VMs block: - - name: Create Common VMs (DCs, Fileservers, WSUS, Chocolatey) + - name: Create Common VMs tags: teardown os_server: name: "{{ item.name }}" @@ -261,7 +261,7 @@ $admin = [adsi]("WinNT://./Administrator, user") $admin.PSBase.Invoke("SetPassword", "{{ vm_initial_password }}") Invoke-Expression ((New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/ansible/ansible-documentation/devel/examples/scripts/ConfigureRemotingForAnsible.ps1')) - loop: "{{ standard_vms1 }}" + loop: "{{ standard_vms }}" async: 900 poll: 0 @@ -273,52 +273,7 @@ type: server vm_state: active register: common_status - until: 'common_status.servers|length == 3' - retries: 100 - delay: 60 - - - name: Common VMs - block: - - name: Create Common VMs (DCs, Fileservers, WSUS, Chocolatey) - tags: teardown - os_server: - name: "{{ item.name }}" - state: "{{ state }}" - image: "{{ vm_image }}" - flavor: 3661211f-673a-4777-8857-fd243d6c407d - timeout: 3600 - boot_from_volume: true - volume_size: 40 - terminate_volume: yes - security_groups: - - domain_member - - "{{ item.security_group }}" - network: "{{ os_network }}" - metadata: - name: "{{ item.meta_name }}" - win_project: "{{ win_project }}" - type: server - variant: "{{ item.security_group }}" # just happens to match maybe change??? - os: windows - userdata: | - #ps1 - Rename-Computer "{{ win_project }}-{{ item.meta_name }}" - $admin = [adsi]("WinNT://./Administrator, user") - $admin.PSBase.Invoke("SetPassword", "{{ vm_initial_password }}") - Invoke-Expression ((New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/ansible/ansible-documentation/devel/examples/scripts/ConfigureRemotingForAnsible.ps1')) - loop: "{{ standard_vms2 }}" - async: 900 - poll: 0 - - - name: Wait for common VMs to build - os_server_info: - name: "{{ os_project }}-{{ win_project }}-*" - filters: - metadata: - type: server - vm_state: active - register: common_status2 - until: 'common_status2.servers|length == 6' + until: 'common_status.servers|length == 6' retries: 100 delay: 60 diff --git a/ansible/vars/common.yml b/ansible/vars/common.yml index d1314ce..b988f9b 100644 --- a/ansible/vars/common.yml +++ b/ansible/vars/common.yml @@ -17,11 +17,10 @@ gpu_flavor: 3661211f-673a-4777-8857-fd243d6c407d # CHANGE THIS filetransfer_user: file-transfer -standard_vms1: +standard_vms: - { name: "{{ os_project }}-{{ win_project }}-dc01", security_group: "domain_controller", meta_name: dc01 } - { name: "{{ os_project }}-{{ win_project }}-dc02", security_group: "domain_controller", meta_name: dc02 } - { name: "{{ os_project }}-{{ win_project }}-fs01", security_group: "file_server", meta_name: fs01 } -standard_vms2: - { name: "{{ os_project }}-{{ win_project }}-fs02", security_group: "file_server", meta_name: fs02 } - { name: "{{ os_project }}-{{ win_project }}-wsus", security_group: "wsus_server", meta_name: wsus } - { name: "{{ os_project }}-{{ win_project }}-choc", security_group: "chocolatey_server", meta_name: choc }