翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Step Functions を と統合 AWS CodeBuild して、ビルドを開始、停止、管理できます。このページには、Step Functions で使用できるサポートされている CodeBuild API が一覧表示されています。
Step Functions での AWS サービスとの統合については、 サービスとの統合「」および「」を参照してくださいStep Functions でサービス API にパラメータを渡す。
Step Functions と の統合 AWS CodeBuild により、Step Functions を使用してビルドをトリガー、停止、管理し、ビルドレポートを共有できます。Step Functions を使用すると、アプリケーションのソフトウェア変更を検証するための継続的統合パイプラインを設計および実行できます。
最適化された CodeBuild 統合の主な機能
-
ジョブの実行 (.sync) 統合パターンがサポートされています。
-
StopBuild
またはStopBuildBatch
を呼び出した後、単複かかわらず構築のバッチは、構築の状態を確定するために CodeBuild 内で内部作業が完了するまで、すぐに削除されません。この期間中に
BatchDeleteBuilds
またはDeleteBuildBatch
を使おうとすると、構築または構築バッチは削除されない場合があります。BatchDeleteBuilds
とDeleteBuildBatch
のために最適化されたサービス統合には、内部再試行が含まれており、停止直後に削除するというユースケースを簡素化します。
次の表に示すとおり、すべての API がすべての統合パターンをサポートしているわけではありません。
API | レスポンスのリクエスト | ジョブの実行 (.sync) |
---|---|---|
StartBuild | サポート | サポート |
StopBuild | サポート | サポートされません |
BatchDeleteBuilds | サポート | サポートされません |
BatchGetReports | サポート | サポートされません |
StartBuildBatch | サポート | サポート |
StopBuildBatch | サポート | サポートされません |
RetryBuildBatch | サポート | サポート |
DeleteBuildBatch | サポート | サポートされません |
Step Functions のパラメータは PascalCase で表されます。
ネイティブサービス API が、API アクション startSyncExecution
などの camelCase である場合でも、StateMachineArn
などの PascalCase でパラメータを指定します。
最適化された 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
静的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StartBuild",
"codebuild:StopBuild",
"codebuild:BatchGetBuilds"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
},
{
"Effect": "Allow",
"Action": [
"events:PutTargets",
"events:PutRule",
"events:DescribeRule"
],
"Resource": [
"arn:aws:events:[[region]]
:[[accountId]]
:rule/StepFunctionsGetEventForCodeBuildStartBuildRule"
]
}
]
}
動的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StartBuild",
"codebuild:StopBuild",
"codebuild:BatchGetBuilds"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:*:project/*"
]
},
{
"Effect": "Allow",
"Action": [
"events:PutTargets",
"events:PutRule",
"events:DescribeRule"
],
"Resource": [
"arn:aws:events:[[region]]
:[[accountId]]
:rule/StepFunctionsGetEventForCodeBuildStartBuildRule"
]
}
]
}
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
静的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StartBuildBatch",
"codebuild:StopBuildBatch",
"codebuild:BatchGetBuildBatches"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
},
{
"Effect": "Allow",
"Action": [
"events:PutTargets",
"events:PutRule",
"events:DescribeRule"
],
"Resource": [
"arn:aws:events:[[region]]
:[[accountId]]
:rule/StepFunctionsGetEventForCodeBuildStartBuildBatchRule"
]
}
]
}
動的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:StartBuildBatch",
"codebuild:StopBuildBatch",
"codebuild:BatchGetBuildBatches"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/*"
]
},
{
"Effect": "Allow",
"Action": [
"events:PutTargets",
"events:PutRule",
"events:DescribeRule"
],
"Resource": [
"arn:aws:events:[[region]]
:[[accountId]]
:rule/StepFunctionsGetEventForCodeBuildStartBuildBatchRule"
]
}
]
}
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
静的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:RetryBuildBatch",
"codebuild:StopBuildBatch",
"codebuild:BatchGetBuildBatches"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/[[projectName]]
"
]
}
]
}
動的リソース
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"codebuild:RetryBuildBatch",
"codebuild:StopBuildBatch",
"codebuild:BatchGetBuildBatches"
],
"Resource": [
"arn:aws:codebuild:[[region]]
:[[accountId]]
:project/*"
]
}
]
}
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/*"
]
}
]
}