我在剧本中的任务:
- name: Run a script
script: '"./files/name of a script.ps1" -Param1 {{ variable_name }}'
以上只是我尝试引用/逃避的最新尝试。无论如何,当我运行包含上述任务的剧本时,我收到这样的错误:
TASK [Run a script] *****************************
task path: /etc/ansible/playbook.yml:38
<192.168.200.245> ESTABLISH WINRM CONNECTION FOR USER: SOME-HOST\Administrator on PORT 5986 TO 192.168.200.245
<192.168.200.245> EXEC Set-StrictMode -Version Latest
(New-Item -Type Directory -Path $env:temp -Name "ansible-tmp-1466538051.8-95578181041077").FullName | Write-Host -Separator '';
<192.168.200.245> PUT "/etc/ansible/"./files/name\" TO "C:\Users\Administrator\AppData\Local\Temp\ansible-tmp-1466537998.0-243829631467080\name"
fatal: [some-host]: FAILED! => {"failed": true, "msg": "file or module does not exist: \"/etc/ansible/\"./files/name\\\""}
这也不起作用,并且失败并出现与上述相同的错误:
script: ./files/name\ of\ a\ script.ps1 -Param1 {{ variable_name }}
我正在运行Ansible版本2.1.0.0(根据我的控制台上的ansible --version
)。
有什么想法吗?
答案 0 :(得分:0)
请在the ansible/ansible project下提交一个关于此问题的错误 - 看起来它不是特定于Windows的问题,因为它失败了。不能保证我们能够正确地穿针以将脚本名称与
free_form
脚本arg中的args分开,但是其他人要求在我们的脚本动作中更明确地区分脚本名称和args ,这对它来说是一个很好的例子。