2022-06-16
560

Примеры tasks playbook Ansible для Windows

Файлы и каталоги

Создание файла
- name: Создание файла
  win_file:
    path: D:\dir1\file.txt
    state: touch
Удаление файла
- name: Удаление файла
  win_file:
    path: D:\dir1\file.txt
    state: absent

Chocolatey

Установка через пакетный менеджер chocolatey
- name: Установка PowerShell 5
  win_chocolatey:
    name: powershell
    state: present

Пользователи и группы

Создание пользователя
- name: Создание пользователя
  win_user:
    name: user123
    password: 12345678
    state: present
    groups:
      - Users
Удаление пользователя
- name: Удаление пользователя
  win_user:
    name: user123
    state: absent
Создание группы
- name: Создание группы
  win_group:
    name: group123
    description: test group
    state: present
Удаление группы
- name: Удаление группы
  win_group:
    name: group123
    state: absent

Службы

Остановка службы
- name: Отключение службы
  win_service: 
    name: WerSvc
    state: stopped

Система

Выполнение произвольной команды PowerShell
- name: Удаление OfficeHub
  win_shell: Get-AppxPackage *officehub* | Remove-AppxPackage
Выполнение скрипта PowerShell из нескольких строк
- name: Удаление OneDrive
  win_shell: |
    Stop-Process -Name OneDrive -Force -ErrorAction 0
    "$env:SystemRoot\System32\OneDriveSetup.exe","$env:SystemRoot\SysWOW64\OneDriveSetup.exe" | Foreach {
      if(Test-Path $_) {
        Start-Process $_ -ArgumentList "/uninstall" -Wait
      }
    }
Смена имени хоста
- name: Смена имени хоста на PC-123
  win_hostname:
    name: PC-123

Реестр

Создание dword записи
- name: Создание dword записи
  win_regedit: 
    path: HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection
    name: AllowTelemetry
    data: 0
    type: dword
Удаление записи реестра
- name: Удаление записи реестра
  win_regedit: 
    path: HKCR:\exefile\shell\runasuser
    name: Extended
    state: absent

Планировщик задач

Отключении задачи планировщика
- name: Отключении задачи планировщика
  win_scheduled_task:
    name: Proxy
    path: \Microsoft\Windows\Autochk
    enabled: no

Файервол

Открытие порта
- name: Открытие порта
  win_firewall_rule:
    name: port 25
    localport: 25
    action: allow
    direction: in
    protocol: tcp
    state: present
    enabled: yes
Открытие диапазона портов
- name: Открытие диапазона портов
  win_firewall_rule:
    name: ports 5000-5010
    localport: 5000-5010
    action: allow
    direction: in
    protocol: tcp
    state: present
    enabled: yes

Установка и удаление программ

Установка из msi
- name: Установка из msi
  win_package:
    path: D:\programs\httpd-2.2.25-win32-x86-no_ssl.msi
    state: present
Можно указать аргументы для установки
- name: Установка из msi с аргументами
  win_package:
    path: D:\programs\httpd-2.2.25-win32-x86-no_ssl.msi
    arguments:
      - /install
      - /passive
      - /norestart
Удаление с использованием файла msi
- name: Удаление из msi
  win_package:
    path: D:\programs\httpd-2.2.25-win32-x86-no_ssl.msi
    state: absent
Удаление с использованием файла exe
- name: Удаление из exe
  win_package:
    path: C:\Program Files\7-Zip\Uninstall.exe
    product_id: 7-Zip
    arguments: /S
    state: absent