私はJenkinsの統合テストの一環としてgitコミットの間で変更されたファイルでのみテストを実行しようとしています。bashの条件付きnosetests
のコードは、フィルタがすべてのファイル結果を削除しない限り動作しません。その後、すべてのテストがノーズで実行されます。私はそのような場合にテストを実行したくないでしょう。
if [ $GIT_PREVIOUS_SUCCESSFUL_COMMIT != $GIT_COMMIT ]; then
git diff --name-only --diff-filter=d $GIT_PREVIOUS_SUCCESSFUL_COMMIT $GIT_COMMIT | grep .py | xargs nosetests -vv
fi
お勧めはありますか?
コードはまったく動作しません。あなたの 'if'ステートメントの条件は、' test "$ GIT_PREVIOUS_SUCCESSFUL_COMMIT"!= "$ GIT_COMMIT" 'または同等のものでなければなりません。 – chepner
あなたは完全に正しいです。私は読みやすいようにスニペットを単純化しようとしましたが、代わりに壊れたコードを書きました!修正中... –
'x '接頭辞は不要です。古くてバグの多いバージョンの[''に対応するための古いハックです。最近のバージョンの ''はそれを必要としません。 – chepner