JenkinsビルドでMonoTouch(Xamarin.iOS 2.0)プロジェクトをセットアップしようとしています。ビルド用に設定したユーザーがいて、必要なすべての証明書とキーをキーチェーンに追加しました。
ターミナルで(こことここで説明されているように)mdtoolを使おうとすると。具体的には、実行するコマンドはです"/Applications/Xamarin Studio.app/Contents/MacOS/mdtool" -v build <path to .sln>
。これを行うと、この出力が得られます
MonoDevelop Build tool
ERROR [2013-02-28 10:31:36Z]: Android SDK not found, needed by Xamarin.Android add in
Loading solution: <path to .sln>
Loading solution: <path to .sln>
Loading projects ..
Building Solution: <Project name> (Ad-Hoc|iPhone)
Building: <project name> (Ad-Hoc|iPhone)
この時点で、ビルドは停止します。Jenkinsユーザーではなく、自分のユーザーで同じコマンドを実行すると、これは期待どおりに機能します。実際にjenkinsユーザーにすべての証明書とキーがあり、すべてのプロビジョニングプロファイルにXCodeからアクセスできることを確認しました。私はこれで終わりになりました、そして本当にいくつかの助けをいただければ幸いです。
さらに混乱させるために、jenkinsユーザーの下でXamarin Studioを使用してこのプロジェクトをビルドしようとすると、プロセスは問題なく成功します。ただし、ビルドプロセスを自動化するには、シェルを介して実行できるコマンドを作成する必要があります。