本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
CodeCommit 源操作参考
在配置的 CodeCommit 存储库和分支上进行新提交时启动管道。
如果您使用控制台创建或编辑管道,则 CodePipeline 会创建一个 CodeCommit CloudWatch 事件规则,该规则将在存储库发生更改时启动您的管道。
在通过 CodeCommit 操作连接管道之前,您必须已经创建了 CodeCommit 存储库。
检测到代码更改后,您可以使用以下选项将代码传递给后续操作:
-
默认-将 CodeCommit 源操作配置为输出包含提交浅表副本的ZIP文件。
-
完全克隆-将源操作配置为将 Git URL 引用输出到存储库以供后续操作使用。
目前,Git URL 引用只能由下游 CodeBuild 操作用于克隆存储库和关联的 Git 元数据。尝试将 Git URL 引用传递给非CodeBuild 操作会导致错误。
操作类型
-
类别:
Source
-
拥有者:
AWS
-
提供方:
CodeCommit
-
版本:
1
配置参数
- RepositoryName
-
必需:是
要在其中检测源更改的存储库的名称。
- BranchName
-
必需:是
要在其中检测源更改的分支的名称。
- PollForSourceChanges
-
必需:否
PollForSourceChanges
控制是否 CodePipeline 轮询 CodeCommit存储库以获取源代码更改。我们建议您改用 “ CloudWatch 事件” 来检测源代码的更改。有关配置 CloudWatch 事件的更多信息,请参阅迁移轮询管道(CodeCommit 来源)(CLI)或迁移轮询管道(CodeCommit 来源)(Amazon CloudFormation 模板)。重要
如果要配置 CloudWatch 事件规则,则必须将设置为
PollForSourceChanges
false
以避免重复的管道执行。此参数的有效值:
-
true
: 如果已设置,则会 CodePipeline 轮询您的存储库以了解源代码更改。注意
如果省略
PollForSourceChanges
,则 CodePipeline 默认为轮询存储库是否有源更改。如果包括PollForSourceChanges
并将其设置为true
,则此行为相同。 -
false
: 如果已设置,则 CodePipeline 不会轮询您的存储库以了解源代码更改。如果您打算配置 CloudWatch 事件规则以检测源更改,请使用此设置。
-
- OutputArtifactFormat
-
必需:否
输出构件格式。值可以是
CODEBUILD_CLONE_REF
或CODE_ZIP
。如果未指定,则默认为CODE_ZIP
。重要
该
CODEBUILD_CLONE_REF
选项只能由 CodeBuild下游操作使用。如果选择此选项,则需要向您的 CodeBuild 服务角色添加
codecommit:GitPull
权限,如所示为 CodeCommit源操作添加 CodeBuild GitClone 权限。您还需要为 CodePipeline服务角色添加codecommit:GetRepository
权限,如所示向 CodePipeline 服务角色添加权限。如需查看教程以了解如何使用完整克隆选项,请参阅教程:使用带有 CodeCommit 管道源的完整克隆。
输入构件
-
构件数:
0
-
描述:输入构件不适用于此操作类型。
输出构件
-
构件数:
1
-
描述:此操作的输出对象是一个ZIP文件,其中包含已配置的存储库和提交时分支的内容,指定为管道执行的源修订版。从存储库生成的构件是 CodeCommit 操作的输出对象。源代码提交 ID 显示 CodePipeline 为触发管道执行的源修订版。
输出变量
配置后,此操作会生成变量,该变量可由管道中下游操作的操作配置引用。此操作生成的变量可视为输出变量,即使操作没有命名空间也是如此。您可以使用命名空间配置操作,以使这些变量可用于下游操作的配置。
有关更多信息,请参阅 变量参考。
- CommitId
-
触发管道执行的 CodeCommit 提交 ID。提交IDs是SHA提交的全部内容。
- CommitMessage
-
与触发管道执行的提交相关联的描述消息(如果有)。
- RepositoryName
-
触发管道的提交所在 CodeCommit 存储库的名称。
- BranchName
-
进行源代码更改的 CodeCommit 存储库的分支名称。
- AuthorDate
-
授权提交的日期,采用时间戳格式。
- CommitterDate
-
进行提交的日期,采用时间戳格式。
操作配置示例
默认输出构件格式的示例
完整克隆输出构件格式的示例
另请参阅
下列相关资源在您使用此操作的过程中会有所帮助。
-
教程:创建简单的管道(CodeCommit存储库)— 本教程提供了示例应用程序规范文件以及示例 CodeDeploy 应用程序和部署组。使用本教程创建具有部署到 Amazon EC2 实例的 CodeCommit 源的管道。