2023.01.28  

【Github Actions】jobの実行を制御する(needs)

Git    

この記事ではjobの実行順序とjobが成功したか否かで動作を制御する例をメモ書きしています。

jobの実行順序を制御するにはneedsを使用します。

この例では、job1 が完了したら job2、job2 が完了したら job3 が始まるように設定しています。

job2にneeds: job1、job3にneeds: job2を設定することで実現できます。マニュアル: jobsjob_idneeds

jobs:
  job1:
    runs-on: ubuntu-latest
    defaults:
      run: |
        echo "test1"

  job2:
    needs: job1
    runs-on: ubuntu-latest
    defaults:
      run: |
        echo "test2"

  job3
    needs: job2
    runs-on: ubuntu-latest
    if: "${{ needs.job2.result }}" = "success"
    defaults:
      run: |
        echo "test3"

if: "${{ needs.job2.result }}" = "success"とすることで、job2が成功しているか判定できます。
job2が成功しているとneeds.job2.resultsuccessとなるためです。 マニュアル: needs コンテキスト

コメント
現在コメントはありません。
コメントする
コメント入力

名前 (※ 必須)

メールアドレス (※ 必須 画面には表示されません)

送信