Build Windows Templates in RHV
This commit is contained in:
69
roles/oatakan.windows_template_build/tasks/winrm-memfix.yml
Normal file
69
roles/oatakan.windows_template_build/tasks/winrm-memfix.yml
Normal file
@@ -0,0 +1,69 @@
|
||||
---
|
||||
|
||||
# see https://docs.ansible.com/ansible/latest/user_guide/windows_setup.html#winrm-memory-hotfix
|
||||
|
||||
- name: download script
|
||||
raw: '[Net.ServicePointManager]::SecurityProtocol = [Enum]::ToObject([Net.SecurityProtocolType], 3072); (New-Object -TypeName System.Net.WebClient).DownloadFile("{{ ps_memfix_script_url }}", "{{ ps_memfix_script_file }}")'
|
||||
changed_when: False
|
||||
check_mode: no
|
||||
register: download_script
|
||||
|
||||
- name: set execution policy
|
||||
raw: 'Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force'
|
||||
changed_when: False
|
||||
check_mode: no
|
||||
ignore_errors: yes
|
||||
|
||||
- name: delete scheduled task if it exists
|
||||
raw: 'SCHTASKS /Delete /TN memfix /f'
|
||||
args:
|
||||
executable: cmd.exe
|
||||
changed_when: False
|
||||
check_mode: no
|
||||
failed_when: False
|
||||
|
||||
- name: create a scheduled task to run powershell script
|
||||
raw: >
|
||||
SCHTASKS /Create /SC MONTHLY /MO first /D SUN /TN memfix /TR "powershell.exe -Command
|
||||
'& {{ ps_memfix_script_file }} -Verbose'"
|
||||
args:
|
||||
executable: cmd.exe
|
||||
changed_when: False
|
||||
check_mode: no
|
||||
|
||||
- name: run scheduled task
|
||||
raw: 'SCHTASKS /Run /TN memfix'
|
||||
args:
|
||||
executable: cmd.exe
|
||||
changed_when: False
|
||||
check_mode: no
|
||||
|
||||
- name: wait for system to reboot after fix
|
||||
wait_for_connection:
|
||||
delay: 240
|
||||
sleep: 30
|
||||
timeout: 300
|
||||
|
||||
- name: wait for powershell memfix task to finish
|
||||
raw: '((schtasks /query /TN memfix)[4] -split " +")[-2]'
|
||||
changed_when: False
|
||||
check_mode: no
|
||||
register: memfix_status_check
|
||||
failed_when: false
|
||||
until: (memfix_status_check.stdout | trim | lower) == 'ready'
|
||||
delay: 10
|
||||
retries: 30
|
||||
|
||||
- name: delete scheduled task
|
||||
win_scheduled_task:
|
||||
name: memfix
|
||||
state: absent
|
||||
register: delete_scheduled_task
|
||||
until: delete_scheduled_task is success
|
||||
delay: 10
|
||||
retries: 10
|
||||
|
||||
- name: delete script
|
||||
win_file:
|
||||
path: "{{ ps_memfix_script_file }}"
|
||||
state: absent
|
||||
Reference in New Issue
Block a user