我试图在Windows Server 2012 R2节点上安装应用程序(Adobe Reader,Access Database等),使用Chef将编译后的AutoIT脚本与相应的安装程序一起下载到节点上 - 我已经一直在使用这种方法,因为并非所有.exe文件都有静默安装程序,并且在我(有限)的经验中,GUI安装程序有时会让用户更好地控制应用程序,允许用户将应用程序设置为"手动检查更新&# 34;等等。
我编译的AutoIT脚本完美无缺,但由于某种原因,Chef不会运行这些.exe文件。
我已经与Chef尝试了以下方法(将应用程序安装程序和AutoIT编译脚本放在' C:\ To_Install')中:
powershell_script 'Run AutoIT installer with PowerShell' do
code <<-EOH
C:\\To_Install\\#{fileName}
EOH
end
和
execute 'Run AutoIT installer with CMD' do
command "C:\\To_Install\\#{fileName}"
end
我很肯定我希望安装的所有应用程序都已传输到节点而没有错误,并且Chef正在以其他所有方式正确地与节点交互(设置时钟,更改用户权限和设置,创建目录等等) )。
有什么我忽略的吗? Chef是否通过与典型用户不同的流程运行.exe文件?
提前致谢!
答案 0 :(得分:0)
从评论中复制下来:
是的,因此WinRM在“无头会话”中运行。图形工具通常不起作用。我不知道有什么好的办法。您需要修复安装程序以使其具有真正的静默模式,或者使用MSI或Nuget将其重新打包。