2016-10-25 6 views
0

Мне нужно создать папку C:\MSI для размещения там файлов msi. Вот моя задача:Несвязанный с узлом Windows - Как создать каталог

tasks: 
    - name: Copy *.msi files from ./MSI to C:\MSI 
    file: path=C:\MSI state=directory 

Но я получил ошибку:

TASK [Copy *.msi files from ./MSI to C:\MSI] *********************************** 
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: + ~~~~~~~~~~~~~~~ 
fatal: [agentsmith]: FAILED! => {"changed": false, "failed": true, "msg": "The term '/usr/bin/python' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again."} 

и в расширенном режиме я вижу, что модуль файла по какой-то причине помещает /usr/bin/python в сценарий Powershell:

TASK [Copy *.msi files from ./MSI to C:\MSI] *********************************** 
task path: /home/qaexpert/ansible-lab/tcagent.yml:8 
<agentsmith> ESTABLISH WINRM CONNECTION FOR USER: Administrator on PORT 5986 TO agentsmith 
<agentsmith> EXEC Set-StrictMode -Version Latest 
(New-Item -Type Directory -Path $env:temp -Name "ansible-tmp-1477410445.62-187863101456896").FullName | Write-Host -Separator ''; 
<agentsmith> PUT "/tmp/tmpqOJYen" TO "C:\Users\Administrator\AppData\Local\Temp\ansible-tmp-1477410445.62-187863101456896\file.ps1" 
<agentsmith> EXEC Set-StrictMode -Version Latest 
Try 
{ 
/usr/bin/python 'C:\Users\Administrator\AppData\Local\Temp\ansible-tmp-1477410445.62-187863101456896\file.ps1' 
} 
Catch 
... 

ответ

3

Ansible ищет /usr/bin/python, потому что модулю file нужен Python, установленный в целевой системе. Невозможно использовать нормальный Модифицированные модули для целей Windows.

Подробнее см. В Ansible Windows documentation. На компьютерах Windows доступны только модули, перечисленные в “windows” subcategory of the Ansible module index.

Для замены обычного модуля file используйте модуль win_file.

Смежные вопросы