Ansible win_msi安装失败

时间:2016-12-09 12:05:46

标签: windows powershell ansible winrm

我正在尝试将这项工作暂时搁置一段时间,但想法已经不多了。

我有一个.msi文件,我想使用Ansible在Win7客户端上安装。 该剧本贯穿始终,但最终将不会安装该程序。

我也无法使用与.exe文件一起使用的“raw”命令,但似乎无法使用我的.msi文件。

规格:

$psversiontable

Name         Value
----         -----
PSVersion    5.0.10589.117

我试图安装的操作系统是Win7 Proffesional。

Powershell版本是:

 - name: Install zarafaclient version 7.2
     win_msi:
       path: 'C:\\temp_files\\z7.2.msi'
       state: present

Playbook看起来像这样:

TASK [Install zarafaclient version 7.2] ****************************************
task path: /home/pfl/ansible/Provisioning-Windows-with-Ansible/playbook.yml:10
Using module file /usr/lib/python2.7/site-packages/ansible/modules/core/windows/win_msi.ps1
<192.168.37.144> ESTABLISH WINRM CONNECTION FOR USER: fdsadm on PORT 5986 TO 192.168.37.144
<192.168.37.144> EXEC Set-StrictMode -Version Latest
(New-Item -Type Directory -Path $env:temp -Name "ansible-tmp-1481285937.55-262476455300775").FullName | Write-Host -Separator '';
<192.168.37.144> PUT "/tmp/tmp0l4Ayh" TO "C:\Users\fdsadm\AppData\Local\Temp\ansible-tmp-1481285937.55-262476455300775\win_msi.ps1"
<192.168.37.144> EXEC Set-StrictMode -Version Latest
Try
{
& 'C:\Users\fdsadm\AppData\Local\Temp\ansible-tmp-1481285937.55-262476455300775\win_msi.ps1'
}
Catch
{
$_obj = @{ failed = $true }
If ($_.Exception.GetType)
{
$_obj.Add('msg', $_.Exception.Message)
}
Else
{
$_obj.Add('msg', $_.ToString())
}
If ($_.InvocationInfo.PositionMessage)
{
$_obj.Add('exception', $_.InvocationInfo.PositionMessage)
}
ElseIf ($_.ScriptStackTrace)
{
$_obj.Add('exception', $_.ScriptStackTrace)
}
Try
{
$_obj.Add('error_record', ($_ | ConvertTo-Json | ConvertFrom-Json))
}
Catch
{
}
Echo $_obj | ConvertTo-Json -Compress -Depth 99
Exit 1
}
Finally { Remove-Item "C:\Users\fdsadm\AppData\Local\Temp\ansible-tmp-1481285937.55-262476455300775" -Force -Recurse -ErrorAction SilentlyContinue }
changed: [192.168.37.144] => {
    "changed": true, 
    "invocation": {
        "module_name": "win_msi"
    }, 
    "log": ""
}

PLAY RECAP *********************************************************************
192.168.37.144             : ok=2    changed=1    unreachable=0    failed=0   

我也尝试了不同的语法,因此不应该是剧本。

如果我用-vvvv

运行它,这是我从ansible得到的
insert

1 个答案:

答案 0 :(得分:0)

它似乎是间距

的问题

我认为你应该看起来像

- name: Install zarafaclient version 7.2
  win_msi:
    path: 'C:\\temp_files\\z7.2.msi'
    state: present