翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Step Functions で AWS CodeBuild ビルドを管理する
Step Functions を と統合 AWS CodeBuild して、ビルドを開始、停止、管理できます。このページには、Step Functions CodeBuild APIs で使用できるサポート対象 が一覧表示されます。
Step Functions での AWS サービスとの統合については、 サービスとの統合「」および「」を参照してくださいStep Functions APIのサービスへのパラメータの受け渡し。
Step Functions と の統合 AWS CodeBuild により、Step Functions を使用してビルドをトリガー、停止、管理し、ビルドレポートを共有できます。Step Functions を使用すると、アプリケーションのソフトウェア変更を検証するための継続的統合パイプラインを設計および実行できます。
最適化 CodeBuild 統合の主な機能
-
ジョブの実行 (.sync) 統合パターンがサポートされています。
-
StopBuild
または を呼び出した後StopBuildBatch
、ビルドまたはビルドバッチは、ビルドまたはビルドの状態を確定 CodeBuild するための内部作業が 内で完了するまですぐに削除できません。この期間中に
BatchDeleteBuilds
またはDeleteBuildBatch
を使おうとすると、構築または構築バッチは削除されない場合があります。BatchDeleteBuilds
とDeleteBuildBatch
のために最適化されたサービス統合には、内部再試行が含まれており、停止直後に削除するというユースケースを簡素化します。
次の表に示すように、すべての がすべての統合パターンAPIsをサポートしているわけではありません。
API | レスポンスのリクエスト | ジョブの実行 (.sync) |
---|---|---|
StartBuild | サポート | サポート対象 |
StopBuild | サポート | サポートされません |
BatchDeleteBuilds | サポート | サポートされません |
BatchGetReports | サポート | サポートされません |
StartBuildBatch | サポート対象 | サポート対象 |
StopBuildBatch | サポート | サポートされません |
RetryBuildBatch | サポート対象 | サポート対象 |
DeleteBuildBatch | サポート | サポートされません |
のパラメータ Step Functions は で表されます PascalCase
API アクション camelCaseなどのネイティブサービスAPIが にある場合でもstartSyncExecution
、 PascalCaseなどのパラメータを で指定しますStateMachineArn
。
サポート CodeBuild APIs
-
-
サポートされているパラメータ:
-
-
-
サポートされているパラメータ:
-
注記
BatchDeleteBuilds
には、JSONPath
再帰的降下 (..
) 演算子を使用できます。配列が返されることで、次の例に示すように、Arn
フィールドを StartBuild
から複数形の Ids
パラメータに変換できます。
"BatchDeleteBuilds": {
"Type": "Task",
"Resource": "arn:aws:states:::codebuild:batchDeleteBuilds",
"Parameters": {
"Ids.$": "$.Build..
Arn"
},
"Next": "MyNextState"
},
IAM を呼び出すための ポリシー AWS CodeBuild
次のサンプルテンプレートは、 がステートマシン定義のリソースに基づいてIAMポリシー AWS Step Functions を生成する方法を示しています。詳細については、Step Functions が統合サービスの IAM ポリシーを生成する方法およびStep Functions でサービス統合パターンを検出するを参照してください。
リソース:
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"sns:Publish"
],
"Resource": [
"arn:aws:sns:sa-east-1:123456789012:StepFunctionsSample-CodeBuildExecution1111-2222-3333-wJalrXUtnFEMI-SNSTopic-bPxRfiCYEXAMPLEKEY"
],
"Effect": "Allow"
},
{
"Action": [
"codebuild:StartBuild",
"codebuild:StopBuild",
"codebuild:BatchGetBuilds",
"codebuild:BatchGetReports"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"events:PutTargets",
"events:PutRule",
"events:DescribeRule"
],
"Resource": [
"arn:aws:events:sa-east-1:123456789012:rule/StepFunctionsGetEventForCodeBuildStartBuildRule"
],
"Effect": "Allow"
}
]
}
StartBuild
静的リソース
動的リソース
StopBuild
静的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuild"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
動的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuild"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:project/*"
]
}
]
}
BatchDeleteBuilds
静的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchDeleteBuilds"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
動的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchDeleteBuilds"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:project/*"
]
}
]
}
BatchGetReports
静的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchGetReports"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:report-group/[[reportName]]
"
]
}
]
}
動的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:BatchGetReports"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:report-group/*"
]
}
]
}
StartBuildBatch
静的リソース
動的リソース
StopBuildBatch
静的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
動的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StopBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/*"
]
}
]
}
RetryBuildBatch
静的リソース
動的リソース
DeleteBuildBatch
静的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:DeleteBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
動的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:DeleteBuildBatch"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/*"
]
}
]
}