我配置TeamCity构建代理(Windows Server 2012 VM)使用Chef,而且我需要为Visual Studio/Android构建安装Xamarin。对于其他安装程序,我通常使用X1 M0 N1 X,X1 M1 N1 X,X1 M2 N1 X,X1 M3 N1 X调用它,-h
和--help
,直到出现一个告诉我命令行参数的用法对话框。但是,我一直无法弄清楚XamarinInstaller.exe
的命令行参数,当我像这样启动它时:
XamarinInstaller.exe /quiet /norestart
因为这些都是常见的约定,它似乎只是坐在那里,什么也不做。它应该是下载的东西(当我用GUI启动它时,它就是这么做的),但当我在任务管理器中查看以太网使用情况时,什么也没发生。我不知道它在哪里写日志,也不知道如何知道它是否发生了故障。当它发生故障时,它似乎没有退出。
下面是我的厨师代码:
xamarinTargets = 'C:\\Program Files (x86)\\MSBuild\\Xamarin\\Android\\Xamarin.Android.CSharp.targets'
xamarinInstaller = 'C:\\Repo\\Xamarin\\XamarinInstaller.exe'
execute "Xamarin" do
command "#{xamarinInstaller} /quiet /norestart"
not_if { ::File.exist?(xamarinTargets) }
end
我如何无意识地调用Xamarin安装程序?我如何用Chef安装它?
1条答案
按热度按时间vojdkbi01#
这是我不得不做的,其中一些有点不稳定。
1.使用
chocolatey
cookbook中的chocolatey_package
资源通过Chocolatey安装android-sdk
和xamarin-visualstudio
。1.验证Xamarin安装是否按预期运行。
1.将预制的
android-sdk.zip
解压缩到$HOME\AppData\Local\Android
中,以便在Android SDK* 中安装所需的所有内容1.验证Android SDK安装是否按预期运行。
1.创建一个注册表项,将Xamarin的Visual Studio集成指向适当的Android SDK。
下面是Chef代码:
android update sdk
时,我一辈子都无法让它工作。Android SDK管理器似乎无法以非图形方式运行,除非它能检测到它正在由用户运行?!不确定,但最后在绝望中,我手动运行命令来安装必要的SDK(我需要API级别15)和构建工具:然后,我将得到的
$HOME\AppData\Local\Android\android-sk
目录压缩为上面提到的“预制android-sdk.zip
“。