VCS にコミットを最初にパブリッシュすると、webhook が起動され、CircleCI はコードをダウンロードしてプロジェクトを実行します。 その後でプルリクエストを作成すると、新しいコミット ID が生成されますが、この新しいリクエストは、 CircleCI では期待どおりに実行されません。
時間、リソース、コストを節約するため、変更されていないコードは 2 回実行されません。 既にテストに通っている場合、コードを再テストする理由はありません。 この場合、ユーザーのアカウントで実行された元のジョブが更新され、プルリクエストが作成されたことを示します。
プルリクエストが作成される前の、ジョブを最初に実行した時点では、`$CIRCLE_PULL_REQUEST` などのデータは存在しません。 プル要求を作成し、それを反映して CircleCI のジョブが更新された後、ジョブが再実行されるとデータが生成されます。
プロジェクト設定の Advanced Settings ページで、Only build pull requests (プルリクエストのみをビルドする) を有効にできます。
この場合、`Master` (ユーザーのデフォルトブランチ) へのコミットのみが許可され、プルリクエストが実行されます。 これによって、最初のコミットは実行されず、プルリクエストが作成されたときに正しく実行されるため、上述の問題が解決します。
コメント
記事コメントは受け付けていません。