AWS CloudFormation
用户指南 (API 版本 2010-05-15)

AWS::CodeBuild::Project Source

SourceAWS::CodeBuild::Project 资源的属性,用于指定项目的源代码设置,如源代码的存储库类型和位置。

语法

要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:

JSON

{ "Auth" : SourceAuth, "BuildSpec" : String, "GitCloneDepth" : Integer, "GitSubmodulesConfig" : GitSubmodulesConfig, "InsecureSsl" : Boolean, "Location" : String, "ReportBuildStatus" : Boolean, "SourceIdentifier" : String, "Type" : String }

属性

Auth

有关允许 AWS CodeBuild 访问要构建的源代码的授权设置的信息。

此信息仅供 AWS CodeBuild 控制台使用。您的代码不应直接获取或设置 Auth

必需:否

类型SourceAuth

Update requires: No interruption

BuildSpec

项目的生成规范。如果未提供该值,则源代码必须在根级别包含名为 buildspec.yml 的生成规范文件。如果提供了该值,则它可以是包含整个生成规范的单一字符串,也可以是相对于内置环境变量 CODEBUILD_SRC_DIR 的值的替代生成规范文件的路径。替代生成规范文件可以使用除 buildspec.yml 以外的名称,例如 myspec.ymlbuild_spec_qa.yml 或类似名称。有关更多信息,请参阅 AWS CodeBuild 用户指南 中的构建规范参考

必需:否

类型:字符串

Update requires: No interruption

GitCloneDepth

要下载的历史记录深度。最小值为 0。如果此值为 0、大于 25 或未提供,则会下载每个构建项目的完整历史记录。如果您的源类型是 Amazon S3,则不支持此值。

必需:否

类型:整数

最低0

Update requires: No interruption

GitSubmodulesConfig

有关构建项目的 Git 子模块配置的信息。

必需:否

类型GitSubmodulesConfig

Update requires: No interruption

InsecureSsl

此值仅适用于 GitHub Enterprise。设置为 true,以便在连接到您的 GitHub Enterprise 项目存储库时忽略 SSL 警告。默认值为 false。只应将 InsecureSsl 用于测试目的。它不应在生产环境中使用。

必需:否

类型:布尔值

Update requires: No interruption

Location

有关要生成的源代码的位置的信息。有效值包括:

  • 对于 AWS CodePipeline 中管道的源操作中指定的源代码设置,不应指定 location。如果指定此参数,AWS CodePipeline 会将其忽略。这是因为 AWS CodePipeline 使用管道的源操作中的设置而不是此值。

  • 对于 AWS CodeCommit 存储库中的源代码,则为指向包含源代码和构建规范的存储库的 HTTPS 克隆 URL(例如,https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name )。

  • 对于 Amazon Simple Storage Service (Amazon S3) 输入存储桶中的源代码,则为下列项目之一。

    • 包含源代码的 ZIP 文件的路径(例如, bucket-name/path/to/object-name.zip)。

    • 包含源代码的文件夹的路径(例如, bucket-name/path/to/source-code/folder/)。

  • 对于 GitHub 存储库中的源代码,则为指向包含源和构建规范的存储库的 HTTPS 克隆 URL。您必须将您的 AWS 账户连接到您的 GitHub 账户。可使用 AWS CodeBuild 控制台开始创建构建项目。当您使用控制台与 GitHub 连接(或重新连接)时,在 Authorize application (授权应用程序) 页面上,对于 Organization access (组织访问权限),选择您希望 AWS CodeBuild 能够访问的每个存储库旁边的 Request access (请求访问权限),然后选择 Authorize application (向应用程序授权)。(在连接到您的 GitHub 账户后,您不需要完成构建项目的创建。您可以离开 AWS CodeBuild 控制台。) 要指示 AWS CodeBuild 使用此连接,请在 source 对象中,将 auth 对象的 type 值设置为 OAUTH

  • 对于 Bitbucket 存储库中的源代码,则为指向包含源和构建规范的存储库的 HTTPS 克隆 URL。您必须将您的 AWS 账户连接到您的 Bitbucket 账户。可使用 AWS CodeBuild 控制台开始创建构建项目。当您使用控制台与 Bitbucket 连接 (或重新连接) 时,在 Bitbucket Confirm access to your account (确认对账户的访问) 页面上,选择 Grant access (授予访问权限)。(在连接到您的 Bitbucket 账户后,您不需要完成构建项目的创建。您可以离开 AWS CodeBuild 控制台。) 要指示 AWS CodeBuild 使用此连接,请在 source 对象中,将 auth 对象的 type 值设置为 OAUTH

如果您为 CODEPIPELINE 属性指定 Type,则不要指定此属性。对于所有其他类型,您必须指定 Location

必需:否

类型:字符串

Update requires: No interruption

ReportBuildStatus

设置为 true 可向源提供商报告构建的开始和结束状态。此选项仅当您的源提供商是 GitHub、GitHub Enterprise 或 Bitbucket 时有效。如果设置此选项并使用其他源提供商,则会引发 invalidInputException

必需:否

类型:布尔值

Update requires: No interruption

SourceIdentifier

该项目源的标识符。

必需:否

类型:字符串

Update requires: No interruption

Type

包含要构建的源代码的存储库的类型。有效值包括:

  • BITBUCKET:Bitbucket 存储库中的源代码。

  • CODECOMMIT:AWS CodeCommit 存储库中的源代码。

  • CODEPIPELINE:在 AWS CodePipeline 中管道的源部分中指定源代码设置。

  • GITHUB:源代码位于 GitHub 存储库中。

  • NO_SOURCE:项目没有输入源代码。

  • S3:源代码位于 Amazon Simple Storage Service (Amazon S3) 输入存储桶中。

必需:是

类型:字符串

允许的值BITBUCKET | CODECOMMIT | CODEPIPELINE | GITHUB | GITHUB_ENTERPRISE | NO_SOURCE | S3

Update requires: No interruption

本页内容: