ビルドをバッチで実行する - AWS CodeBuild

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ビルドをバッチで実行する

AWS CodeBuild を使用して、バッチビルドを使用してプロジェクトの同時ビルドと調整ビルドを実行できます。

セキュリティロール

バッチビルドでは、バッチ設定に新しいセキュリティロールが導入されます。バッチの一部としてビルドを実行するには CodeBuild 、ユーザーに代わって StartBuild、、および RetryBuildアクションを呼び出す必要があるためStopBuild、この新しいロールが必要です。次の2つの理由により、お客様はビルドで使用するものと同じロールではなく、新しいロールを使用する必要があります。

  • ビルドの役割を与える StartBuildStopBuild、および RetryBuild アクセス権限を使用すると、単一のビルドが buildspec を介してより多くのビルドを開始することができます。

  • CodeBuild バッチビルドには、バッチ内のビルドに使用できるビルドとコンピューティングタイプの数を制限する制限があります。ビルドロールにこれらの権限がある場合、ビルド自体がこれらの制限を回避する可能性があります。

バッチビルドのタイプ

CodeBuild では、次のバッチビルドタイプがサポートされています。

ビルドグラフ

ビルドグラフは、バッチ内の他のタスクに依存する一連のタスクを定義します。

次の例では、依存関係チェーンを作成するビルドグラフを定義します。

batch: fast-fail: false build-graph: - identifier: build1 env: variables: BUILD_ID: build1 ignore-failure: false - identifier: build2 buildspec: build2.yml env: variables: BUILD_ID: build2 depend-on: - build1 - identifier: build3 env: variables: BUILD_ID: build3 depend-on: - build2

この例では、以下のことを行います。

  • build1 は、依存関係を持たないため、最初に実行されます。

  • build2 は build1 への依存関係があるため、build2 は build1 の完了後に実行されます。

  • build3 は build2 への依存関係があるため、build3 は build2 の完了後に実行されます。

ビルドグラフの buildspec 構文の詳細については、「batch/build-graph」を参照してください。

ビルドリスト

ビルドリストは、並行して実行されるタスクの数を定義します。

次の例では、ビルドリストを定義します。build1 ビルドと build2 ビルドは並行して実行されます。

batch: fast-fail: false build-list: - identifier: build1 env: variables: BUILD_ID: build1 ignore-failure: false - identifier: build2 buildspec: build2.yml env: variables: BUILD_ID: build2 ignore-failure: true

ビルドリストの buildspec 構文の詳細については、「batch/build-list」を参照してください。

ビルドマトリックス

ビルドマトリックスは、並行して実行される異なる構成のタスクを定義します。 CodeBuild は、可能な設定の組み合わせごとに個別のビルドを作成します。

次の例は、2 つの buildspec ファイルと環境変数の 3 つの値を含むビルド行列を示しています。

batch: build-matrix: static: ignore-failure: false dynamic: buildspec: - matrix1.yml - matrix2.yml env: variables: MY_VAR: - VALUE1 - VALUE2 - VALUE3

この例では、 は 6 つのビルド CodeBuild を作成します。

  • matrix1.yml ( を含む)$MY_VAR=VALUE1

  • matrix1.yml ( を含む)$MY_VAR=VALUE2

  • matrix1.yml ( を含む)$MY_VAR=VALUE3

  • matrix2.yml ( を含む)$MY_VAR=VALUE1

  • matrix2.yml ( を含む)$MY_VAR=VALUE2

  • matrix2.yml ( を含む)$MY_VAR=VALUE3

各ビルドには次の設定があります。

  • ignore-failure が false に設定

  • env/type が LINUX_CONTAINER に設定

  • env/image が aws/codebuild/amazonlinux2-x86_64-standard:4.0 に設定

  • env/privileged-mode が true に設定

これらのビルドは並行して実行されます。

ビルドマトリックスの buildspec 構文の詳細については、「batch/build-matrix」を参照してください。

バッチレポートモード

プロジェクトのソースプロバイダーが Bitbucket GitHub、または GitHub Enterprise で、プロジェクトがビルドステータスをソースプロバイダーに報告するように設定されている場合は、バッチビルドステータスをソースプロバイダーに送信する方法を選択できます。バッチに関する単一の集約ステータスレポートとしてステータスを送信する、またはバッチ内の各ビルドのステータスを個別に報告することを選択できます。

詳細については、以下の各トピックを参照してください。

詳細情報

詳細については、以下の各トピックを参照してください。