This is the new Amazon CloudFormation Template Reference Guide. Please update your bookmarks and links. For help getting started with CloudFormation, see the Amazon CloudFormation User Guide.
AWS::CodeStar::GitHubRepository
The AWS::CodeStar::GitHubRepository resource creates a GitHub repository
         where users can store source code for use with Amazon workflows. You must
         provide a location for the source code ZIP file in the Amazon CloudFormation template, so
         the code can be uploaded to the created repository. You must have created a personal access
         token in GitHub to provide in the Amazon CloudFormation template. Amazon uses
         this token to connect to GitHub on your behalf.
Syntax
To declare this entity in your Amazon CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::CodeStar::GitHubRepository", "Properties" : { "Code" :Code, "ConnectionArn" :String, "EnableIssues" :Boolean, "IsPrivate" :Boolean, "RepositoryAccessToken" :String, "RepositoryDescription" :String, "RepositoryName" :String, "RepositoryOwner" :String} }
YAML
Type: AWS::CodeStar::GitHubRepository Properties: Code:CodeConnectionArn:StringEnableIssues:BooleanIsPrivate:BooleanRepositoryAccessToken:StringRepositoryDescription:StringRepositoryName:StringRepositoryOwner:String
Properties
- Code
- 
                    Information about code to be committed to a repository after it is created in an Amazon CloudFormation stack. Required: No Type: Code Update requires: Updates are not supported. 
- ConnectionArn
- Property description not available. - Required: No - Type: String - Update requires: No interruption 
- EnableIssues
- 
                    Indicates whether to enable issues for the GitHub repository. You can use GitHub issues to track information and bugs for your repository. Required: No Type: Boolean Update requires: Updates are not supported. 
- IsPrivate
- 
                    Indicates whether the GitHub repository is a private repository. If so, you choose who can see and commit to this repository. Required: No Type: Boolean Update requires: Updates are not supported. 
- RepositoryAccessToken
- 
                    The GitHub user's personal access token for the GitHub repository. Required: No Type: String Update requires: Updates are not supported. 
- RepositoryDescription
- 
                    A comment or description about the new repository. This description is displayed in GitHub after the repository is created. Required: No Type: String Update requires: Updates are not supported. 
- RepositoryName
- 
                    The name of the repository you want to create in GitHub with Amazon CloudFormation stack creation. Required: Yes Type: String Update requires: Updates are not supported. 
- RepositoryOwner
- 
                    The GitHub user name for the owner of the GitHub repository to be created. If this repository should be owned by a GitHub organization, provide its name. Required: Yes Type: String Update requires: Updates are not supported. 
Return values
Ref
When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns a string combination of the repository owner and the
         repository name, such as my-github-account/my-github-repo.
For more information about using the Ref function, see Ref.
Fn::GetAtt
The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.
For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.
- Id
- 
                            The repository ID. 
Examples
GitHub Repository Resource Configuration
The following example for the AWS::CodeStar::GitHubRepository
               resource creates a private GitHub repository with issues enabled.
When passing secret parameters, do not enter the value directly into the template. The value is rendered as plain text and is readable. Instead, enter secret parameters using one of the following methods:
- 
                            Pass the value in as a NoEchoparameter. For more information, see Referencing a Parameter in a Template.
- 
                            Store the GitHub token in Amazon Secrets Manager and retrieve it through the resource property. The following example shows the token ID as the parameter stored in Amazon Secrets Manager with this value: resolve:secretsmanager:your-secret-manager-name:SecretString:your-secret-manager-key.
JSON
{ "MyRepo": { "Type": "AWS::CodeStar::GitHubRepository", "Properties": { "Code": { "S3": { "Bucket": "amzn-s3-demo-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: "amzn-s3-demo-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