Я использую ansible 2.9.2, и я хочу запустить скрипт, который создает пользователя на моей машине windows. Сценарий работает, если я запускаю в своем PowerShell локально, как это:
powershell.exe -ExecutionPolicy Bypass -File create_user.ps1 -pass "{{ pass }}" -user "{{ user }}" -gr "{{ gr }}"
Playbook:
tasks:
- name: "Createing windows user"
local_action:
module: vmware_vm_shell
cluster: "{{ cluster }}"
datacenter: "{{ datacenter }}"
hostname: "{{ vcenter_server }}"
username: "{{ vcenter_user }}"
password: "{{ vcenter_pass }}"
vm_id: "{{vm_name}}"
vm_username: "{{ vm_username }}"
vm_password: "{{ vm_password }}"
vm_shell: 'C:\Windows\System32\WindowsPowershell\v1.0\powershell.exe'
vm_shell_args: powershell.exe -ExecutionPolicy Bypass -File create_user.ps1 -pass "{{ pass }}" -user "{{ user }}" -gr "{{ gr }}"
vm_shell_cwd: 'C:\Users\myuser\Desktop'
wait_for_process: yes
validate_certs: no
register: info
- debug:
msg: "{{ info }}"
Из playbook я не получаю никакой ошибки, но пользователь не создается, вручную с помощью той же команды все работает. это потому, что я использую PowerShell в качестве администратора локально? Есть ли способ сделать это здесь?
вот вывод:
ok: [localhost] => {
"msg": {
"changed": true,
"cmd_line": "\"C:\\Windows\\System32\\WindowsPowershell\\v1.0\\powershell.exe\" powershell.exe -ExecutionPolicy Bypass -File create_user.ps1 -pass \"********7\" -user \"Tomy\" -gr \"Localgroup\"",
"end_time": "2020-01-14T13:44:32+00:00",
"exit_code": 0,
"failed": false,
"name": "powershell.exe",
"owner": "myuser",
"start_time": "2020-01-14T13:44:31+00:00",
"uuid": "4256795-43ec-87c2-fd4bf-5dffv6f2a4"
}
}
localhost : ok=3 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0