From 0f0867998b70bbb7d6a26ed26f9db69487feab6f Mon Sep 17 00:00:00 2001 From: abrown38 Date: Sun, 7 Apr 2024 17:54:47 +0000 Subject: [PATCH] change inital VM password --- ansible/playbooks/checkmk.yml | 2 - ansible/playbooks/win_initial.yml | 3 ++ ansible/roles/win_initial/tasks/initial.yml | 50 +++++++++++++++++++++ 3 files changed, 53 insertions(+), 2 deletions(-) diff --git a/ansible/playbooks/checkmk.yml b/ansible/playbooks/checkmk.yml index 6965f60..ede791e 100644 --- a/ansible/playbooks/checkmk.yml +++ b/ansible/playbooks/checkmk.yml @@ -7,8 +7,6 @@ - ../vars/checkmk.yml - ../vars/common.yml - ../vars/connection.yml - vars: - ansible_password: "{{ fake_ansible_password }}" tasks: - name: Install CheckMK agent on VMs import_role: diff --git a/ansible/playbooks/win_initial.yml b/ansible/playbooks/win_initial.yml index 5cda4fa..7467f07 100644 --- a/ansible/playbooks/win_initial.yml +++ b/ansible/playbooks/win_initial.yml @@ -1,8 +1,11 @@ --- - hosts: "meta-win_project_{{ win_project }}" + gather_facts: false vars_files: - ../vars/common.yml - ../vars/connection.yml + vars: + password_status: "{{ lookup('file', '/deployments/{{ os_project }}-{{ win_project }}/PASSWORD') }}" roles: - role: win_initial tags: win_initial \ No newline at end of file diff --git a/ansible/roles/win_initial/tasks/initial.yml b/ansible/roles/win_initial/tasks/initial.yml index 988adbf..2574198 100644 --- a/ansible/roles/win_initial/tasks/initial.yml +++ b/ansible/roles/win_initial/tasks/initial.yml @@ -1,4 +1,27 @@ --- +- name: Password + tags: + - password + - password_check + - always + block: + - name: Check for pending password status + set_fact: + ansible_password: "{{ vm_initial_password }}" + run_once: true + when: password_status == 'pending' + + - name: Check for finished or change password status + set_fact: + ansible_password: "{{ vm_password }}" + run_once: true + when: password_status == 'finished' or + password_status == 'change' + + - name: Test password + win_ping: + tags: initial_ping + - name: Ping Windows hosts win_ping: tags: initial_ping @@ -30,6 +53,10 @@ path: "C:\\Users\\Admin" state: absent +- name: Reboot VMs + win_reboot: + tags: reboot + - name: Create EIDF directory in system drive win_file: path: "C:\\eidf" @@ -53,3 +80,26 @@ timezone: GMT Standard Time tags: timezone +- name: Administrator Password + tags: + - password + - password_change + - always + block: + - name: Change Administrator password + win_user: + name: Administrator + password: "{{ vm_password }}" + + - name: Set Password Status + vars: + ansible_connection: local + replace: + path: /deployments/{{ os_project }}-{{ win_project }}/PASSWORD + regexp: '^{{ password_status }}$' + replace: 'finished' + delegate_to: localhost + run_once: True + when: password_status == 'pending' or + password_status == 'change' +