config.yml ファイルのみを変更する場合にジョブを停止する

config.yml ファイルを大幅に変更したいものの、変更ごとにはビルドが実行されないようにしたい場合があります。

そのためには、変更作業をする際に、ワークフローの各ジョブの最初 (- checkout ステップの後) に以下のコードを追加します。

- run: | 
changes=`git show --name-only ${CIRCLE_SHA1} | tail -n +7`
if [ "$changes" = ".circleci/config.yml" ]; then
echo "Only found a configuration change. Stopping build"
circleci-agent step halt
fi

このコードは、コミット内でどのファイルが変更されたかを確認するものです。変更対象が設定ファイルのみだった場合、ジョブは "circleci-agent step halt" コマンドにより正常に終了されます。

設定ファイルの変更が完了したら、上記の実行ステップを削除すれば、通常どおりにビルドのプロセスが開始されます。

この記事は役に立ちましたか?
7人中4人がこの記事が役に立ったと言っています

コメント

0件のコメント

記事コメントは受け付けていません。