AWS::CodeStar::GitHubRepository - AWS CloudFormation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS::CodeStar::GitHubRepository

AWS::CodeStar::GitHubRepository 资源可创建 GitHub 存储库,用户可以在其中存储源代码,以便用于 AWS 工作流。您必须在 AWS CloudFormation 模板中提供源代码 ZIP 文件的位置,以便可以将代码上传到创建的存储库。您必须已在 GitHub 中创建了个人访问令牌,才能在 AWS CloudFormation 模板中提供。AWS 使用该令牌代表您连接到 GitHub。有关将 GitHub 源存储库与 AWS CodeStar 项目一起使用的更多信息,请参阅 AWS CodeStar 项目文件和资源

语法

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

JSON

{ "Type" : "AWS::CodeStar::GitHubRepository", "Properties" : { "Code" : Code, "EnableIssues" : Boolean, "IsPrivate" : Boolean, "RepositoryAccessToken" : String, "RepositoryDescription" : String, "RepositoryName" : String, "RepositoryOwner" : String } }

YAML

Type: AWS::CodeStar::GitHubRepository Properties: Code: Code EnableIssues: Boolean IsPrivate: Boolean RepositoryAccessToken: String RepositoryDescription: String RepositoryName: String RepositoryOwner: String

属性

Code

有关在 AWS CloudFormation 堆栈中创建存储库后提交到该存储库的代码的信息。

必需:否

类型Code

Update requires: Updates are not supported.

EnableIssues

指示是否为 GitHub 存储库启用问题。您可以使用 GitHub 问题来跟踪存储库的信息和错误。

必需:否

类型:布尔值

Update requires: Updates are not supported.

IsPrivate

指示 GitHub 存储库是否是私有存储库。如果是,您选择哪些人可以查看和提交到此存储库。

必需:否

类型:布尔值

Update requires: Updates are not supported.

RepositoryAccessToken

GitHub 用户对 GitHub 存储库的个人访问令牌。

必需:是

类型:字符串

Update requires: Updates are not supported.

RepositoryDescription

有关新存储库的注释或描述。此说明在创建存储库后显示在 GitHub 中。

必需:否

类型:字符串

Update requires: Updates are not supported.

RepositoryName

您要随 AWS CloudFormation 堆栈创建在 GitHub 中创建的存储库的名称。

必需:是

类型:字符串

Update requires: Updates are not supported.

RepositoryOwner

要创建的 GitHub 存储库所有者的 GitHub 用户名。如果存储库应由 GitHub 组织所有,请提供组织名称。

必需:是

类型:字符串

Update requires: Updates are not supported.

返回值

Ref

在将此资源的逻辑 ID 传递给内部 Ref 函数时,Ref 返回 存储库所有者和存储库名称的字符串组合,如 my-github-account/my-github-repo

For more information about using the Ref function, see Ref.

示例

GitHub 存储库资源配置

以下示例为 AWS::CodeStar::GitHubRepository 资源创建一个私有 GitHub 存储库并启用问题。

传递密钥参数时,请勿直接将值输入到模板中。该值以纯文本形式呈现,是可读的。而是应使用以下方法之一输入秘密参数:

  • 作为 NoEcho 参数传递值。有关更多信息,请参阅引用模板中的参数

  • 将 GitHub 令牌存储在 AWS Secrets Manager 中,并通过 resource 属性检索它。以下示例将令牌 ID 显示为存储在 AWS Secrets Manager 中、具有以下值的参数:resolve:secretsmanager:your-secret-manager-name:SecretString:your-secret-manager-key

JSON

{ "MyRepo": { "Type": "AWS::CodeStar::GitHubRepository", "Properties": { "Code": { "S3": { "Bucket": "my-bucket", "Key": "sourcecode.zip", "ObjectVersion": "1" } }, "EnableIssues": true, "IsPrivate": true, "RepositoryAccessToken": "{{resolve:secretsmanager:your-secret-manager-name:SecretString:your-secret-manager-key}}", "RepositoryDescription": "a description", "RepositoryName": "my-github-repo", "RepositoryOwner": "my-github-account" } } }

YAML

MyRepo: Type: AWS::CodeStar::GitHubRepository Properties: Code: S3: Bucket: "my-bucket" Key: "sourcecode.zip" ObjectVersion: "1" EnableIssues: true IsPrivate: true RepositoryAccessToken: '{{resolve:secretsmanager:your-secret-manager-name:SecretString:your-secret-manager-key}}' RepositoryDescription: a description RepositoryName: my-github-repo RepositoryOwner: my-github-account