2011-09-09 32 views
9

私はxcodebuildを継続的な統合サーバー上のbashスクリプトの中で使用しています。xcodebuildの戻り値を取得する方法は?

ビルドがスクリプトで失敗したことを知りたいので、そのビルドから時期尚早に終了し、失敗としてビルドをマークすることができます。

xcodebuildはコンソールにBUILD FAILEDメッセージを表示しますが、戻り値の取得には成功しません。

どうすればこの問題を解決できますか?事前

答えて

7

おかげで私は、このコマンドを使用して私の問題を解決しました:xcodebuildを-... || exit 1

+0

これは最もクリーンな回答です。 thnx Mike;) – MQoder

8

"$?"変数を使用して、前のコマンドの戻りコードを取得します。

11

xcodebuildは、実際のテスト結果にかかわらず常に0を返します。テストが合格かどうかを知るには、出力に** BUILD FAILED **または** BUILD SUCCEEDED **のいずれかをチェックする必要があります。

+1

これらのステータスをどのように確認できますか?彼らは終了コードのようなものではありませんAFAIK – erenkabakci

4

Xcodebuildは、hereに記載されているエラーコードを返すことができ、EX_OK(またはint 0)に限定されません。

しかし、ドミトリーのソリューションから学び、以下のように変更しました。それは私のために働くと私はそれが参考になることを願っています。

xcodebuild -project ...... 
    if test $? -eq 0 
    then 
     echo "Success" 
    else 
     echo "Failed" 
    fi 
2

おそらく、xcodebuildがビルドに失敗したときにゼロ以外の値を返さないためではありません。エラーを返す行に関係なく実行し続けるシェルスクリプトは、 "-e"オプションを指定してスクリプトを実行しなかったことが原因です。

#!/ bin/bash -eをスクリプトファイルより先に入力してください。

-1

コンパイル済み製品(.aまたは.ipaファイル)が存在するかどうか

関連する問題