私はxcodebuildを継続的な統合サーバー上のbashスクリプトの中で使用しています。xcodebuildの戻り値を取得する方法は?
ビルドがスクリプトで失敗したことを知りたいので、そのビルドから時期尚早に終了し、失敗としてビルドをマークすることができます。
xcodebuildはコンソールにBUILD FAILEDメッセージを表示しますが、戻り値の取得には成功しません。
どうすればこの問題を解決できますか?事前
私はxcodebuildを継続的な統合サーバー上のbashスクリプトの中で使用しています。xcodebuildの戻り値を取得する方法は?
ビルドがスクリプトで失敗したことを知りたいので、そのビルドから時期尚早に終了し、失敗としてビルドをマークすることができます。
xcodebuildはコンソールにBUILD FAILEDメッセージを表示しますが、戻り値の取得には成功しません。
どうすればこの問題を解決できますか?事前
で
おかげで私は、このコマンドを使用して私の問題を解決しました:xcodebuildを-... || exit 1
"$?"変数を使用して、前のコマンドの戻りコードを取得します。
xcodebuild
は、実際のテスト結果にかかわらず常に0を返します。テストが合格かどうかを知るには、出力に** BUILD FAILED **
または** BUILD SUCCEEDED **
のいずれかをチェックする必要があります。
これらのステータスをどのように確認できますか?彼らは終了コードのようなものではありませんAFAIK – erenkabakci
Xcodebuildは、hereに記載されているエラーコードを返すことができ、EX_OK(またはint 0)に限定されません。
しかし、ドミトリーのソリューションから学び、以下のように変更しました。それは私のために働くと私はそれが参考になることを願っています。
xcodebuild -project ......
if test $? -eq 0
then
echo "Success"
else
echo "Failed"
fi
おそらく、xcodebuildがビルドに失敗したときにゼロ以外の値を返さないためではありません。エラーを返す行に関係なく実行し続けるシェルスクリプトは、 "-e"オプションを指定してスクリプトを実行しなかったことが原因です。
#!/ bin/bash -eをスクリプトファイルより先に入力してください。
コンパイル済み製品(.aまたは.ipaファイル)が存在するかどうか
これは最もクリーンな回答です。 thnx Mike;) – MQoder