Amazon CodeBuild 使用 Step Functions 调用 - Amazon Step Functions
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon CodeBuild 使用 Step Functions 调用

Step Functions 可以直接从 Amazon States Language (ASL) 控制某些 Amazon 服务。要了解更多信息,请参阅使用其他服务将参数传递给服务 API

优化后的 CodeBuild 集成与 S CodeBuild Amazon DK 集成有何不同
  • 支持运行作业 (.sync) 集成模式。

  • 调用StopBuild或后StopBuildBatch,只有在内部完成一些内部工作 CodeBuild 以最终确定一个或多个生成状态后,才能立即删除生成或生成批次。如果您在此期间尝试使用 BatchDeleteBuildsDeleteBuildBatch,则可能无法删除构建或构建批处理。BatchDeleteBuildsDeleteBuildBatch 的优化服务集成包括内部重试,以简化停止后立即删除的用例。

与的 Amazon Step Functions 服务集成 Amazon CodeBuild 使您能够使用 Step Functions 触发、停止和管理构建,以及共享生成报告。使用 Step Functions,您可以设计和运行持续的集成管道,以验证应用程序的软件更改。

并非所有 API 都支持所有集成模式,如下表所示。

API 请求响应 运行作业 (.sync)
StartBuild
StopBuild
BatchDeleteBuilds
BatchGetReports
StartBuildBatch
StopBuildBatch
RetryBuildBatch
DeleteBuildBatch
中的Step Functions参数表示为 PascalCase

即使原生服务 API 在 camelCase 中(例如 API 操作)startSyncExecution,您也可以在中指定参数 PascalCase,例如:。StateMachineArn

支持 CodeBuild 的 API 和语法:

注意

您可以对 BatchDeleteBuilds 使用 JSONPath 递归下降 (..) 运算符。这将返回一个数组,并使您可以将 Arn 字段从 StartBuild 转换为复数 Ids 参数,如以下示例所示。

"BatchDeleteBuilds": { "Type": "Task", "Resource": "arn:aws:states:::codebuild:batchDeleteBuilds", "Parameters": { "Ids.$": "$.Build..Arn" }, "Next": "MyNextState" },

有关在与其他 Amazon 服务Step Functions一起使用时如何配置IAM权限的信息,请参阅集成服务的 IAM 策略