特定のコミットまたはプルリクエストをスキップする

設定によっては、リポジトリ内のすべてのコード変更がBitriseビルドをトリガーする可能性があります。ただし、必要に応じて、特定のコミットまたはプルリクエストをスキップできます。スキップとは、このコンテキストでは、トリガーがそうするように設定されている場合でも、コードの変更がBitriseでのビルドをトリガーしないことを意味します。

コミットがビルドをトリガーしないようにする

特定のコミットがビルドをトリガーしないようにするには、次のいずれかを含めます [skip ci] また [ci skip] コミットメッセージ内:

 This is not important, please [skip ci]

または:

I just changed the README 

[ci skip] 

ヘッド/ラストコミットメッセージのみがチェックされます!

複数のコミットをプッシュすると、最後の(先頭の)コミットのメッセージのみがチェックされます。 skip ci パターン!

結局、ビルドを開始したい場合は、次の2つの選択肢があります。

  • コミットをリベースします(コミットメッセージを変更します)。

  • 別のコミットをプッシュします。

空のコミットをプッシュする

Gitを使用すると、空のコミットを作成してプッシュできます。スキップされたビルドをビルドしたい場合は、 git commit --allow-empty -m "I decided to run this" 関連するブランチでコミットをプッシュします。

プルリクエストがビルドをトリガーしないようにする

プルリクエストは、それ自体が(仮想)コミットとして扱われます。コミットメッセージは、プルリクエストのタイトルと説明です。です いいえ プルリクエストを構成する個々のコミットのコミットメッセージ。

プルリクエストをスキップするには、 skip ci プルリクエストのタイトルまたは説明のパターン。

個々のコミットメッセージはチェックされません

置く skip ci プルリクエストを構成する個々のコミットのコミットメッセージのパターンは機能しません。適切なトリガーが設定されている場合、プルリクエストはビルドをトリガーします。

プルリクエストをスキップしないことを決定した場合/プルリクエストでさらにコミットする場合は、単に削除することができます skip ci プルリクエストのタイトルまたは説明からのパターン。これにより、最新のコミットで新しいビルドが自動的にトリガーされ、プルリクエストの今後のすべてのコミットもビルドされます( skip ci 再びパターン)。

ドラフトPRによってトリガーされたビルドを終了する

あなたが使用するとき GitHubのドラフトPR関数、Bitriseは環境変数をビルド環境変数リストに挿入します。このEnvVarがビルドEnvVarリストで使用可能な場合、その値は常に次のように設定されます。 true

あなたは見つけることができます GITHUB_PR_IS_DRAFT ビルドにEnvVarを設定し、ビルドをすぐに中止して、2つの方法で同時実行/クレジットを保存します。

以下のスクリプトコマンドをに挿入すると 脚本 ステップ、コマンドはドラフトPR Env Varが定義されている場合、それをキャッチし、ビルドは失敗します。

#!/usr/bin/env bash
# fail if any commands fails
set -e
# debug log
set -x

if [[ -z "${GITHUB_PR_IS_DRAFT}" ]]; then
     echo 'Not a draft PR'
else
     exit 1
fi

空の緑色のビルドを非常に高速に実行したい場合は、以下に挿入することをお勧めします run_if ステップをスキップするには、ワークフローの各ステップにコマンドを送信します。

workflow1:
    steps:
    - script@1:
        run_if: '{{enveq "GITHUB_PR_IS_DRAFT" ""}}'   
        inputs:
        - content: |-
            #!/usr/bin/env bash
            # fail if any commands fails
            set -e
            # debug log
            set -x  

ドラフトPR後に新しいビルドを開始する

以前にビルドでドラフトPRを使用したことがあるが、同じPRからコードへの変更をマージする準備ができている場合は、[ レビューの準備ができました GitHubのボタンは、Bitriseでの新しいビルドをトリガーしません。以前のビルドには、PR関連の環境変数のドラフトも含まれます。この場合、Webサイトから新しいビルドを手動で開始するか、新しいコミットでCIをトリガーすることをお勧めします。