ジョブの ID を設定する
ジョブへの一意の識別子の指定には、jobs.<job_id>
を使います。 job_id
キーは文字列で、その値はジョブの設定データのマップです。 <job_id>
は、jobs
オブジェクトに固有の文字列に置き換える必要があります。 <job_id>
は文字または _
で始まり、英数字、-
、あるいは _
のみを含める必要があります。
例: ジョブを作成する
この例では、job_id
値が my_first_job
と my_second_job
の 2 つのジョブが作成されました。
jobs:
my_first_job:
name: My first job
my_second_job:
name: My second job
ジョブの名前を設定する
GitHub UI に表示されるジョブの名前の設定に jobs.<job_id>.name
を使用します。
前提条件のジョブを定義する
jobs.<job_id>.needs
を使って、このジョブの実行前に正常に完了する必要があるジョブを示します。 文字列型または文字列の配列です。 ジョブが失敗またはスキップされた場合、そのジョブを必要とするすべてのジョブは、そのジョブが継続する条件式を使っていない限り、スキップされます。 互いに必要とする一連のジョブが実行に含まれている場合、失敗またはスキップの時点から、依存関係チェーン内のすべてのジョブに失敗またはスキップが適用されます。
例: 依存ジョブの成功が必要である
jobs:
job1:
job2:
needs: job1
job3:
needs: [job1, job2]
この例では、job1
が正常に完了してから job2
が始まる必要があり、job3
では job1
と job2
の両方が完了するまで待機します。
つまり、この例のジョブは逐次実行されるということです。
job1
job2
job3
例: 依存ジョブの成功は必要ではない
jobs:
job1:
job2:
needs: job1
job3:
if: ${{ always() }}
needs: [job1, job2]
この例では、job3
では条件式 always()
を使っているので、job1
と job2
が成功したかどうかに関係なく、完了後に常に実行されます。 詳しくは、「式」を参照してください。
GitHub UI に表示されるジョブの名前の設定に jobs.<job_id>.name
を使用します。
Defining prerequisite jobs
jobs.<job_id>.needs
を使って、このジョブの実行前に正常に完了する必要があるジョブを示します。 文字列型または文字列の配列です。 ジョブが失敗またはスキップされた場合、そのジョブを必要とするすべてのジョブは、そのジョブが継続する条件式を使っていない限り、スキップされます。 互いに必要とする一連のジョブが実行に含まれている場合、失敗またはスキップの時点から、依存関係チェーン内のすべてのジョブに失敗またはスキップが適用されます。
例: 依存ジョブの成功が必要である
jobs:
job1:
job2:
needs: job1
job3:
needs: [job1, job2]
この例では、job1
が正常に完了してから job2
が始まる必要があり、job3
では job1
と job2
の両方が完了するまで待機します。
つまり、この例のジョブは逐次実行されるということです。
job1
job2
job3
例: 依存ジョブの成功は必要ではない
jobs:
job1:
job2:
needs: job1
job3:
if: ${{ always() }}
needs: [job1, job2]
この例では、job3
では条件式 always()
を使っているので、job1
と job2
が成功したかどうかに関係なく、完了後に常に実行されます。 詳しくは、「式」を参照してください。