This resource allows you to create and manage repositories within your GitHub organization or personal account.
To declare this entity in your AWS CloudFormation template, use the following syntax:
{ "Type" : "TF::GitHub::Repository", "Properties" : { "AllowMergeCommit" : Boolean, "AllowRebaseMerge" : Boolean, "AllowSquashMerge" : Boolean, "ArchiveOnDestroy" : Boolean, "Archived" : Boolean, "AutoInit" : Boolean, "DefaultBranch" : String, "DeleteBranchOnMerge" : Boolean, "Description" : String, "GitignoreTemplate" : String, "HasDownloads" : Boolean, "HasIssues" : Boolean, "HasProjects" : Boolean, "HasWiki" : Boolean, "HomepageUrl" : String, "IsTemplate" : Boolean, "LicenseTemplate" : String, "Name" : String, "Private" : Boolean, "Topics" : [ String, ... ], "Visibility" : String, "VulnerabilityAlerts" : Boolean, "Pages" : [ PagesDefinition, ... ], "Template" : [ TemplateDefinition, ... ] } }
Type: TF::GitHub::Repository Properties: AllowMergeCommit: Boolean AllowRebaseMerge: Boolean AllowSquashMerge: Boolean ArchiveOnDestroy: Boolean Archived: Boolean AutoInit: Boolean DefaultBranch: String DeleteBranchOnMerge: Boolean Description: String GitignoreTemplate: String HasDownloads: Boolean HasIssues: Boolean HasProjects: Boolean HasWiki: Boolean HomepageUrl: String IsTemplate: Boolean LicenseTemplate: String Name: String Private: Boolean Topics: - String Visibility: String VulnerabilityAlerts: Boolean Pages: - PagesDefinition Template: - TemplateDefinition
Set to false
to disable merge commits on the repository.
Required: No
Type: Boolean
Update requires: No interruption
Set to false
to disable rebase merges on the repository.
Required: No
Type: Boolean
Update requires: No interruption
Set to false
to disable squash merges on the repository.
Required: No
Type: Boolean
Update requires: No interruption
Set to true
to archive the repository instead of deleting on destroy.
Required: No
Type: Boolean
Update requires: No interruption
Specifies if the repository should be archived. Defaults to false
. NOTE Currently, the API does not support unarchiving.
Required: No
Type: Boolean
Update requires: No interruption
Set to true
to produce an initial commit in the repository.
Required: No
Type: Boolean
Update requires: No interruption
(Deprecated: Use github_branch_default
resource instead) The name of the default branch of the repository. NOTE: This can only be set after a repository has already been created,
and after a correct reference has been created for the target branch inside the repository. This means a user will have to omit this parameter from the
initial repository creation and create the target branch inside of the repository prior to setting this attribute.
Required: No
Type: String
Update requires: No interruption
Automatically delete head branch after a pull request is merged. Defaults to false
.
Required: No
Type: Boolean
Update requires: No interruption
A description of the repository.
Required: No
Type: String
Update requires: No interruption
Use the name of the template without the extension. For example, "Haskell".
Required: No
Type: String
Update requires: No interruption
Set to true
to enable the (deprecated) downloads features on the repository.
Required: No
Type: Boolean
Update requires: No interruption
Set to true
to enable the GitHub Issues features
on the repository.
Required: No
Type: Boolean
Update requires: No interruption
Set to true
to enable the GitHub Projects features on the repository. Per the GitHub documentation when in an organization that has disabled repository projects it will default to false
and will otherwise default to true
. If you specify true
when it has been disabled it will return an error.
Required: No
Type: Boolean
Update requires: No interruption
Set to true
to enable the GitHub Wiki features on
the repository.
Required: No
Type: Boolean
Update requires: No interruption
URL of a page describing the project.
Required: No
Type: String
Update requires: No interruption
Set to true
to tell GitHub that this is a template repository.
Required: No
Type: Boolean
Update requires: No interruption
Use the name of the template without the extension. For example, "mit" or "mpl-2.0".
Required: No
Type: String
Update requires: No interruption
The name of the repository.
Required: Yes
Type: String
Update requires: No interruption
Set to true
to create a private repository.
Repositories are created as public (e.g. open source) by default.
Required: No
Type: Boolean
Update requires: No interruption
The list of topics of the repository.
Required: No
Type: List of String
Update requires: No interruption
Can be public
or private
. If your organization is associated with an enterprise account using GitHub Enterprise Cloud or GitHub Enterprise Server 2.20+, visibility can also be internal
. The visibility
parameter overrides the private
parameter.
Required: No
Type: String
Update requires: No interruption
Required: No
Type: Boolean
Update requires: No interruption
Required: No
Type: List of PagesDefinition
Update requires: No interruption
Required: No
Type: List of TemplateDefinition
Update requires: No interruption
When you pass the logical ID of this resource to the intrinsic Ref
function, Ref returns the tfcfnid.
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.
Internal identifier for tracking resource changes. Do not use.
Returns the Etag
value.
Returns the FullName
value.
Returns the GitCloneUrl
value.
Returns the HtmlUrl
value.
Returns the HttpCloneUrl
value.
Returns the Id
value.
Returns the NodeId
value.
Returns the RepoId
value.
Returns the SshCloneUrl
value.
Returns the SvnUrl
value.