Package @pulumi/github
This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the
pulumi/pulumi-githubrepo; however, if that doesn’t turn up anything, please consult the sourceterraform-providers/terraform-provider-githubrepo.
var github = require("@pulumi/github");
import * as github from "@pulumi/github";Modules
Resources
- ActionsSecret
- Branch
- BranchProtection
- IssueLabel
- Membership
- OrganizationBlock
- OrganizationProject
- OrganizationWebhook
- ProjectColumn
- Provider
- Repository
- RepositoryCollaborator
- RepositoryDeployKey
- RepositoryFile
- RepositoryProject
- RepositoryWebhook
- Team
- TeamMembership
- TeamRepository
- TeamSyncGroupMapping
- UserGpgKey
- UserInvitationAccepter
- UserSshKey
Functions
- getActionsPublicKey
- getBranch
- getCollaborators
- getIpRanges
- getMembership
- getOrganizationTeamSyncGroups
- getRelease
- getRepositories
- getRepository
- getTeam
- getUser
Others
- ActionsSecretArgs
- ActionsSecretState
- BranchArgs
- BranchProtectionArgs
- BranchProtectionState
- BranchState
- GetActionsPublicKeyArgs
- GetActionsPublicKeyResult
- GetBranchArgs
- GetBranchResult
- GetCollaboratorsArgs
- GetCollaboratorsResult
- getEnv
- getEnvBoolean
- getEnvNumber
- GetIpRangesResult
- GetMembershipArgs
- GetMembershipResult
- GetOrganizationTeamSyncGroupsResult
- GetReleaseArgs
- GetReleaseResult
- GetRepositoriesArgs
- GetRepositoriesResult
- GetRepositoryArgs
- GetRepositoryResult
- GetTeamArgs
- GetTeamResult
- GetUserArgs
- GetUserResult
- getVersion
- IssueLabelArgs
- IssueLabelState
- MembershipArgs
- MembershipState
- OrganizationBlockArgs
- OrganizationBlockState
- OrganizationProjectArgs
- OrganizationProjectState
- OrganizationWebhookArgs
- OrganizationWebhookState
- ProjectColumnArgs
- ProjectColumnState
- ProviderArgs
- RepositoryArgs
- RepositoryCollaboratorArgs
- RepositoryCollaboratorState
- RepositoryDeployKeyArgs
- RepositoryDeployKeyState
- RepositoryFileArgs
- RepositoryFileState
- RepositoryProjectArgs
- RepositoryProjectState
- RepositoryState
- RepositoryWebhookArgs
- RepositoryWebhookState
- TeamArgs
- TeamMembershipArgs
- TeamMembershipState
- TeamRepositoryArgs
- TeamRepositoryState
- TeamState
- TeamSyncGroupMappingArgs
- TeamSyncGroupMappingState
- UserGpgKeyArgs
- UserGpgKeyState
- UserInvitationAccepterArgs
- UserInvitationAccepterState
- UserSshKeyArgs
- UserSshKeyState
Resources
Resource ActionsSecret
class ActionsSecret extends CustomResourceconstructor
new ActionsSecret(name: string, args: ActionsSecretArgs, opts?: pulumi.CustomResourceOptions)Create a ActionsSecret resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ActionsSecretState, opts?: pulumi.CustomResourceOptions): ActionsSecretGet an existing ActionsSecret resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ActionsSecretReturns true if the given object is an instance of ActionsSecret. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property createdAt
public createdAt: pulumi.Output<string>;Date of actionsSecret creation.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property plaintextValue
public plaintextValue: pulumi.Output<string>;Plaintext value of the secret to be encrypted
property repository
public repository: pulumi.Output<string>;Name of the repository
property secretName
public secretName: pulumi.Output<string>;Name of the secret
property updatedAt
public updatedAt: pulumi.Output<string>;Date of actionsSecret update.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Branch
class Branch extends CustomResourceThis resource allows you to create and manage branches within your repository.
Additional constraints can be applied to ensure your branch is created from another branch or commit.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const development = new github.Branch("development", {
branch: "development",
repository: "example",
});constructor
new Branch(name: string, args: BranchArgs, opts?: pulumi.CustomResourceOptions)Create a Branch resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: BranchState, opts?: pulumi.CustomResourceOptions): BranchGet an existing Branch resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is BranchReturns true if the given object is an instance of Branch. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property branch
public branch: pulumi.Output<string>;The repository branch to create.
property etag
public etag: pulumi.Output<string>;An etag representing the Branch object.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property ref
public ref: pulumi.Output<string>;A string representing a branch reference, in the form of refs/heads/<branch>.
property repository
public repository: pulumi.Output<string>;The GitHub repository name.
property sha
public sha: pulumi.Output<string>;A string storing the reference’s HEAD commit’s SHA1.
property sourceBranch
public sourceBranch: pulumi.Output<string | undefined>;The branch name to start from. Defaults to master.
property sourceSha
public sourceSha: pulumi.Output<string>;The commit hash to start from. Defaults to the tip of sourceBranch. If provided, sourceBranch is ignored.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource BranchProtection
class BranchProtection extends CustomResourceProtects a GitHub branch.
This resource allows you to configure branch protection for repositories in your organization. When applied, the branch will be protected from forced pushes and deletion. Additional constraints, such as required status checks or restrictions on users, teams, and apps, can also be configured.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const exampleTeam = new github.Team("example", {});
// Protect the master branch of the foo repository. Additionally, require that
// the "ci/travis" context to be passing and only allow the engineers team merge
// to the branch.
const exampleBranchProtection = new github.BranchProtection("example", {
branch: "master",
enforceAdmins: true,
repository: github_repository_example.name,
requiredPullRequestReviews: {
dismissStaleReviews: true,
dismissalTeams: [
exampleTeam.slug,
github_team_second.slug,
],
dismissalUsers: ["foo-user"],
},
requiredStatusChecks: {
contexts: ["ci/travis"],
strict: false,
},
restrictions: {
apps: ["foo-app"],
teams: [exampleTeam.slug],
users: ["foo-user"],
},
});
const exampleTeamRepository = new github.TeamRepository("example", {
permission: "pull",
repository: github_repository_example.name,
teamId: exampleTeam.id,
});constructor
new BranchProtection(name: string, args: BranchProtectionArgs, opts?: pulumi.CustomResourceOptions)Create a BranchProtection resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: BranchProtectionState, opts?: pulumi.CustomResourceOptions): BranchProtectionGet an existing BranchProtection resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is BranchProtectionReturns true if the given object is an instance of BranchProtection. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property branch
public branch: pulumi.Output<string>;The Git branch to protect.
property enforceAdmins
public enforceAdmins: pulumi.Output<boolean | undefined>;Boolean, setting this to true enforces status checks for repository administrators.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property repository
public repository: pulumi.Output<string>;The GitHub repository name.
property requireSignedCommits
public requireSignedCommits: pulumi.Output<boolean | undefined>;Boolean, setting this to true requires all commits to be signed with GPG.
property requiredPullRequestReviews
public requiredPullRequestReviews: pulumi.Output<BranchProtectionRequiredPullRequestReviews | undefined>;Enforce restrictions for pull request reviews. See Required Pull Request Reviews below for details.
property requiredStatusChecks
public requiredStatusChecks: pulumi.Output<BranchProtectionRequiredStatusChecks | undefined>;Enforce restrictions for required status checks. See Required Status Checks below for details.
property restrictions
public restrictions: pulumi.Output<BranchProtectionRestrictions | undefined>;Enforce restrictions for the users and teams that may push to the branch. See Restrictions below for details.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource IssueLabel
class IssueLabel extends CustomResourceconstructor
new IssueLabel(name: string, args: IssueLabelArgs, opts?: pulumi.CustomResourceOptions)Create a IssueLabel resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: IssueLabelState, opts?: pulumi.CustomResourceOptions): IssueLabelGet an existing IssueLabel resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is IssueLabelReturns true if the given object is an instance of IssueLabel. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property color
public color: pulumi.Output<string>;A 6 character hex code, without the leading #, identifying the color of the label.
property description
public description: pulumi.Output<string | undefined>;A short description of the label.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the label.
property repository
public repository: pulumi.Output<string>;The GitHub repository
property url
public url: pulumi.Output<string>;The URL to the issue label
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Membership
class Membership extends CustomResourceProvides a GitHub membership resource.
This resource allows you to add/remove users from your organization. When applied, an invitation will be sent to the user to become part of the organization. When destroyed, either the invitation will be cancelled or the user will be removed.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
// Add a user to the organization
const membershipForSomeUser = new github.Membership("membershipForSomeUser", {
role: "member",
username: "SomeUser",
});constructor
new Membership(name: string, args: MembershipArgs, opts?: pulumi.CustomResourceOptions)Create a Membership resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: MembershipState, opts?: pulumi.CustomResourceOptions): MembershipGet an existing Membership resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is MembershipReturns true if the given object is an instance of Membership. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property role
public role: pulumi.Output<string | undefined>;The role of the user within the organization.
Must be one of member or admin. Defaults to member.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property username
public username: pulumi.Output<string>;The user to add to the organization.
Resource OrganizationBlock
class OrganizationBlock extends CustomResourceThis resource allows you to create and manage blocks for GitHub organizations.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const example = new github.OrganizationBlock("example", {
username: "paultyng",
});constructor
new OrganizationBlock(name: string, args: OrganizationBlockArgs, opts?: pulumi.CustomResourceOptions)Create a OrganizationBlock resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: OrganizationBlockState, opts?: pulumi.CustomResourceOptions): OrganizationBlockGet an existing OrganizationBlock resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is OrganizationBlockReturns true if the given object is an instance of OrganizationBlock. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property username
public username: pulumi.Output<string>;The name of the user to block.
Resource OrganizationProject
class OrganizationProject extends CustomResourceThis resource allows you to create and manage projects for GitHub organization.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const project = new github.OrganizationProject("project", {
body: "This is a organization project.",
});constructor
new OrganizationProject(name: string, args?: OrganizationProjectArgs, opts?: pulumi.CustomResourceOptions)Create a OrganizationProject resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: OrganizationProjectState, opts?: pulumi.CustomResourceOptions): OrganizationProjectGet an existing OrganizationProject resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is OrganizationProjectReturns true if the given object is an instance of OrganizationProject. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property body
public body: pulumi.Output<string | undefined>;The body of the project.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the project.
property url
public url: pulumi.Output<string>;URL of the project
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource OrganizationWebhook
class OrganizationWebhook extends CustomResourceThis resource allows you to create and manage webhooks for GitHub organization.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const foo = new github.OrganizationWebhook("foo", {
active: false,
configuration: {
contentType: "form",
insecureSsl: false,
url: "https://google.de/",
},
events: ["issues"],
});constructor
new OrganizationWebhook(name: string, args: OrganizationWebhookArgs, opts?: pulumi.CustomResourceOptions)Create a OrganizationWebhook resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: OrganizationWebhookState, opts?: pulumi.CustomResourceOptions): OrganizationWebhookGet an existing OrganizationWebhook resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is OrganizationWebhookReturns true if the given object is an instance of OrganizationWebhook. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property active
public active: pulumi.Output<boolean | undefined>;Indicate of the webhook should receive events. Defaults to true.
property configuration
public configuration: pulumi.Output<OrganizationWebhookConfiguration | undefined>;key/value pair of configuration for this webhook. Available keys are url, contentType, secret and insecureSsl.
property etag
public etag: pulumi.Output<string>;property events
public events: pulumi.Output<string[]>;A list of events which should trigger the webhook. See a list of available events
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property url
public url: pulumi.Output<string>;URL of the webhook
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource ProjectColumn
class ProjectColumn extends CustomResourceThis resource allows you to create and manage columns for GitHub projects.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const project = new github.OrganizationProject("project", {
body: "This is an organization project.",
});
const column = new github.ProjectColumn("column", {
projectId: project.id,
});constructor
new ProjectColumn(name: string, args: ProjectColumnArgs, opts?: pulumi.CustomResourceOptions)Create a ProjectColumn resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ProjectColumnState, opts?: pulumi.CustomResourceOptions): ProjectColumnGet an existing ProjectColumn resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ProjectColumnReturns true if the given object is an instance of ProjectColumn. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the column.
property projectId
public projectId: pulumi.Output<string>;The ID of an existing project that the column will be created in.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Provider
class Provider extends ProviderResourceThe provider type for the github package. By default, resources use package-wide configuration
settings, however an explicit Provider instance may be created and passed during resource
construction to achieve fine-grained programmatic control over provider settings. See the
documentation for more information.
constructor
new Provider(name: string, args?: ProviderArgs, opts?: pulumi.ResourceOptions)Create a Provider resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ProviderReturns true if the given object is an instance of Provider. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
method register
static register(provider: ProviderResource | undefined): Promise<string | undefined>property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Repository
class Repository extends CustomResourceconstructor
new Repository(name: string, args?: RepositoryArgs, opts?: pulumi.CustomResourceOptions)Create a Repository resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RepositoryState, opts?: pulumi.CustomResourceOptions): RepositoryGet an existing Repository resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is RepositoryReturns true if the given object is an instance of Repository. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property allowMergeCommit
public allowMergeCommit: pulumi.Output<boolean | undefined>;Set to false to disable merge commits on the repository.
property allowRebaseMerge
public allowRebaseMerge: pulumi.Output<boolean | undefined>;Set to false to disable rebase merges on the repository.
property allowSquashMerge
public allowSquashMerge: pulumi.Output<boolean | undefined>;Set to false to disable squash merges on the repository.
property archived
public archived: pulumi.Output<boolean | undefined>;Specifies if the repository should be archived. Defaults to false. NOTE Currently, the API does not support unarchiving.
property autoInit
public autoInit: pulumi.Output<boolean | undefined>;Set to true to produce an initial commit in the repository.
property defaultBranch
public defaultBranch: pulumi.Output<string>;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.
property deleteBranchOnMerge
public deleteBranchOnMerge: pulumi.Output<boolean | undefined>;Automatically delete head branch after a pull request is merged. Defaults to false.
property description
public description: pulumi.Output<string | undefined>;A description of the repository.
property etag
public etag: pulumi.Output<string>;property fullName
public fullName: pulumi.Output<string>;A string of the form “orgname/reponame”.
property gitCloneUrl
public gitCloneUrl: pulumi.Output<string>;URL that can be provided to git clone to clone the repository anonymously via the git protocol.
property gitignoreTemplate
public gitignoreTemplate: pulumi.Output<string | undefined>;Use the name of the template without the extension. For example, “Haskell”.
property hasDownloads
public hasDownloads: pulumi.Output<boolean | undefined>;Set to true to enable the (deprecated) downloads features on the repository.
property hasIssues
public hasIssues: pulumi.Output<boolean | undefined>;Set to true to enable the GitHub Issues features
on the repository.
property hasProjects
public hasProjects: pulumi.Output<boolean | undefined>;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.
property hasWiki
public hasWiki: pulumi.Output<boolean | undefined>;Set to true to enable the GitHub Wiki features on
the repository.
property homepageUrl
public homepageUrl: pulumi.Output<string | undefined>;URL of a page describing the project.
property htmlUrl
public htmlUrl: pulumi.Output<string>;URL to the repository on the web.
property httpCloneUrl
public httpCloneUrl: pulumi.Output<string>;URL that can be provided to git clone to clone the repository via HTTPS.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property isTemplate
public isTemplate: pulumi.Output<boolean | undefined>;Set to true to tell GitHub that this is a template repository.
property licenseTemplate
public licenseTemplate: pulumi.Output<string | undefined>;Use the name of the template without the extension. For example, “mit” or “mpl-2.0”.
property name
public name: pulumi.Output<string>;The name of the repository.
property nodeId
public nodeId: pulumi.Output<string>;property private
public private: pulumi.Output<boolean | undefined>;Set to true to create a private repository.
Repositories are created as public (e.g. open source) by default.
property sshCloneUrl
public sshCloneUrl: pulumi.Output<string>;URL that can be provided to git clone to clone the repository via SSH.
property svnUrl
public svnUrl: pulumi.Output<string>;URL that can be provided to svn checkout to check out the repository via GitHub’s Subversion protocol emulation.
property template
public template: pulumi.Output<RepositoryTemplate | undefined>;Use a template repository to create this resource. See Template Repositories below for details.
property topics
public topics: pulumi.Output<string[] | undefined>;The list of topics of the repository.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource RepositoryCollaborator
class RepositoryCollaborator extends CustomResourceProvides a GitHub repository collaborator resource.
This resource allows you to add/remove collaborators from repositories in your organization. Collaborators can have explicit (and differing levels of) read, write, or administrator access to specific repositories in your organization, without giving the user full organization membership.
When applied, an invitation will be sent to the user to become a collaborator on a repository. When destroyed, either the invitation will be cancelled or the collaborator will be removed from the repository.
Further documentation on GitHub collaborators:
- Adding outside collaborators to repositories in your organization
- Converting an organization member to an outside collaborator
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
// Add a collaborator to a repository
const aRepoCollaborator = new github.RepositoryCollaborator("aRepoCollaborator", {
permission: "admin",
repository: "our-cool-repo",
username: "SomeUser",
});constructor
new RepositoryCollaborator(name: string, args: RepositoryCollaboratorArgs, opts?: pulumi.CustomResourceOptions)Create a RepositoryCollaborator resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RepositoryCollaboratorState, opts?: pulumi.CustomResourceOptions): RepositoryCollaboratorGet an existing RepositoryCollaborator resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is RepositoryCollaboratorReturns true if the given object is an instance of RepositoryCollaborator. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property invitationId
public invitationId: pulumi.Output<string>;ID of the invitation to be used in github..UserInvitationAccepter
property permission
public permission: pulumi.Output<string | undefined>;The permission of the outside collaborator for the repository.
Must be one of pull, push, maintain, triage or admin. Defaults to push.
property repository
public repository: pulumi.Output<string>;The GitHub repository
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property username
public username: pulumi.Output<string>;The user to add to the repository as a collaborator.
Resource RepositoryDeployKey
class RepositoryDeployKey extends CustomResourceProvides a GitHub repository deploy key resource.
A deploy key is an SSH key that is stored on your server and grants access to a single GitHub repository. This key is attached directly to the repository instead of to a personal user account.
This resource allows you to add/remove repository deploy keys.
Further documentation on GitHub repository deploy keys: - About deploy keys
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
// Add a deploy key
const exampleRepositoryDeployKey = new github.RepositoryDeployKey("exampleRepositoryDeployKey", {
key: "ssh-rsa AAA...",
readOnly: false,
repository: "test-repo",
title: "Repository test key",
});constructor
new RepositoryDeployKey(name: string, args: RepositoryDeployKeyArgs, opts?: pulumi.CustomResourceOptions)Create a RepositoryDeployKey resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RepositoryDeployKeyState, opts?: pulumi.CustomResourceOptions): RepositoryDeployKeyGet an existing RepositoryDeployKey resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is RepositoryDeployKeyReturns true if the given object is an instance of RepositoryDeployKey. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property key
public key: pulumi.Output<string>;A SSH key.
property readOnly
public readOnly: pulumi.Output<boolean | undefined>;A boolean qualifying the key to be either read only or read/write.
property repository
public repository: pulumi.Output<string>;Name of the GitHub repository.
property title
public title: pulumi.Output<string>;A title.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource RepositoryFile
class RepositoryFile extends CustomResourceThis resource allows you to create and manage files within a GitHub repository.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const gitignore = new github.RepositoryFile("gitignore", {
content: "**/*.tfstate",
file: ".gitignore",
repository: "example",
});constructor
new RepositoryFile(name: string, args: RepositoryFileArgs, opts?: pulumi.CustomResourceOptions)Create a RepositoryFile resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RepositoryFileState, opts?: pulumi.CustomResourceOptions): RepositoryFileGet an existing RepositoryFile resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is RepositoryFileReturns true if the given object is an instance of RepositoryFile. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property branch
public branch: pulumi.Output<string | undefined>;Git branch (defaults to master).
The branch must already exist, it will not be created if it does not already exist.
property commitAuthor
public commitAuthor: pulumi.Output<string>;Committer author name to use.
property commitEmail
public commitEmail: pulumi.Output<string>;Committer email address to use.
property commitMessage
public commitMessage: pulumi.Output<string>;Commit message when adding or updating the managed file.
property content
public content: pulumi.Output<string>;The file content.
property file
public file: pulumi.Output<string>;The path of the file to manage.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property repository
public repository: pulumi.Output<string>;The repository name
property sha
public sha: pulumi.Output<string>;The SHA blob of the file.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource RepositoryProject
class RepositoryProject extends CustomResourceThis resource allows you to create and manage projects for GitHub repository.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const example = new github.Repository("example", {
description: "My awesome codebase",
hasProjects: true,
});
const project = new github.RepositoryProject("project", {
body: "This is a repository project.",
repository: example.name,
});constructor
new RepositoryProject(name: string, args: RepositoryProjectArgs, opts?: pulumi.CustomResourceOptions)Create a RepositoryProject resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RepositoryProjectState, opts?: pulumi.CustomResourceOptions): RepositoryProjectGet an existing RepositoryProject resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is RepositoryProjectReturns true if the given object is an instance of RepositoryProject. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property body
public body: pulumi.Output<string | undefined>;The body of the project.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the project.
property repository
public repository: pulumi.Output<string>;The repository of the project.
property url
public url: pulumi.Output<string>;URL of the project
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource RepositoryWebhook
class RepositoryWebhook extends CustomResourceconstructor
new RepositoryWebhook(name: string, args: RepositoryWebhookArgs, opts?: pulumi.CustomResourceOptions)Create a RepositoryWebhook resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RepositoryWebhookState, opts?: pulumi.CustomResourceOptions): RepositoryWebhookGet an existing RepositoryWebhook resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is RepositoryWebhookReturns true if the given object is an instance of RepositoryWebhook. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property active
public active: pulumi.Output<boolean | undefined>;Indicate of the webhook should receive events. Defaults to true.
property configuration
public configuration: pulumi.Output<RepositoryWebhookConfiguration | undefined>;key/value pair of configuration for this webhook. Available keys are url, contentType, secret and insecureSsl. secret is the shared secret, see API documentation.
property etag
public etag: pulumi.Output<string>;property events
public events: pulumi.Output<string[]>;A list of events which should trigger the webhook. See a list of available events.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property repository
public repository: pulumi.Output<string>;The repository of the webhook.
property url
public url: pulumi.Output<string>;URL of the webhook
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Team
class Team extends CustomResourceProvides a GitHub team resource.
This resource allows you to add/remove teams from your organization. When applied, a new team will be created. When destroyed, that team will be removed.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
// Add a team to the organization
const someTeam = new github.Team("someTeam", {
description: "Some cool team",
privacy: "closed",
});constructor
new Team(name: string, args?: TeamArgs, opts?: pulumi.CustomResourceOptions)Create a Team resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: TeamState, opts?: pulumi.CustomResourceOptions): TeamGet an existing Team resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is TeamReturns true if the given object is an instance of Team. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property description
public description: pulumi.Output<string | undefined>;A description of the team.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property ldapDn
public ldapDn: pulumi.Output<string | undefined>;The LDAP Distinguished Name of the group where membership will be synchronized. Only available in GitHub Enterprise.
property name
public name: pulumi.Output<string>;The name of the team.
property nodeId
public nodeId: pulumi.Output<string>;property parentTeamId
public parentTeamId: pulumi.Output<number | undefined>;The ID of the parent team, if this is a nested team.
property privacy
public privacy: pulumi.Output<string | undefined>;The level of privacy for the team. Must be one of secret or closed.
Defaults to secret.
property slug
public slug: pulumi.Output<string>;The slug of the created team, which may or may not differ from name,
depending on whether name contains “URL-unsafe” characters.
Useful when referencing the team in github..BranchProtection.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource TeamMembership
class TeamMembership extends CustomResourceProvides a GitHub team membership resource.
This resource allows you to add/remove users from teams in your organization. When applied, the user will be added to the team. If the user hasn’t accepted their invitation to the organization, they won’t be part of the team until they do. When destroyed, the user will be removed from the team.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
// Add a user to the organization
const membershipForSomeUser = new github.Membership("membershipForSomeUser", {
role: "member",
username: "SomeUser",
});
const someTeam = new github.Team("someTeam", {
description: "Some cool team",
});
const someTeamMembership = new github.TeamMembership("someTeamMembership", {
role: "member",
teamId: someTeam.id,
username: "SomeUser",
});constructor
new TeamMembership(name: string, args: TeamMembershipArgs, opts?: pulumi.CustomResourceOptions)Create a TeamMembership resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: TeamMembershipState, opts?: pulumi.CustomResourceOptions): TeamMembershipGet an existing TeamMembership resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is TeamMembershipReturns true if the given object is an instance of TeamMembership. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property role
public role: pulumi.Output<string | undefined>;The role of the user within the team.
Must be one of member or maintainer. Defaults to member.
property teamId
public teamId: pulumi.Output<string>;The GitHub team id
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property username
public username: pulumi.Output<string>;The user to add to the team.
Resource TeamRepository
class TeamRepository extends CustomResourceThis resource manages relationships between teams and repositories in your GitHub organization.
Creating this resource grants a particular team permissions on a particular repository.
The repository and the team must both belong to the same organization
on GitHub. This resource does not actually create any repositories;
to do that, see github..Repository.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
// Add a repository to the team
const someTeam = new github.Team("someTeam", {
description: "Some cool team",
});
const someRepo = new github.Repository("someRepo", {});
const someTeamRepo = new github.TeamRepository("someTeamRepo", {
permission: "pull",
repository: someRepo.name,
teamId: someTeam.id,
});constructor
new TeamRepository(name: string, args: TeamRepositoryArgs, opts?: pulumi.CustomResourceOptions)Create a TeamRepository resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: TeamRepositoryState, opts?: pulumi.CustomResourceOptions): TeamRepositoryGet an existing TeamRepository resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is TeamRepositoryReturns true if the given object is an instance of TeamRepository. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property permission
public permission: pulumi.Output<string | undefined>;The permissions of team members regarding the repository.
Must be one of pull, triage, push, maintain, or admin. Defaults to pull.
property repository
public repository: pulumi.Output<string>;The repository to add to the team.
property teamId
public teamId: pulumi.Output<string>;The GitHub team id
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource TeamSyncGroupMapping
class TeamSyncGroupMapping extends CustomResourceThis resource allows you to create and manage Identity Provider (IdP) group connections within your GitHub teams. You must have team synchronization enabled for organizations owned by enterprise accounts.
To learn more about team synchronization between IdPs and Github, please refer to: https://help.github.com/en/github/setting-up-and-managing-organizations-and-teams/synchronizing-teams-between-your-identity-provider-and-github
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const exampleGroups = github.getOrganizationTeamSyncGroups({});
const exampleGroupMapping = new github.TeamSyncGroupMapping("exampleGroupMapping", {
teamSlug: "example",
dynamic: [{
forEach: exampleGroups.then(exampleGroups => exampleGroups.groups.filter(g => g.groupName == "someTeamGroup").map(g => g)),
content: [{
groupId: group.value.group_id,
groupName: group.value.group_name,
groupDescription: group.value.group_description,
}],
}],
});constructor
new TeamSyncGroupMapping(name: string, args: TeamSyncGroupMappingArgs, opts?: pulumi.CustomResourceOptions)Create a TeamSyncGroupMapping resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: TeamSyncGroupMappingState, opts?: pulumi.CustomResourceOptions): TeamSyncGroupMappingGet an existing TeamSyncGroupMapping resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is TeamSyncGroupMappingReturns true if the given object is an instance of TeamSyncGroupMapping. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property etag
public etag: pulumi.Output<string>;property groups
public groups: pulumi.Output<TeamSyncGroupMappingGroup[] | undefined>;An Array of GitHub Identity Provider Groups (or empty []). Each group block consists of the fields documented below.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property teamSlug
public teamSlug: pulumi.Output<string>;Slug of the team
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource UserGpgKey
class UserGpgKey extends CustomResourceProvides a GitHub user’s GPG key resource.
This resource allows you to add/remove GPG keys from your user account.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const example = new github.UserGpgKey("example", {
armoredPublicKey: `-----BEGIN PGP PUBLIC KEY BLOCK-----
...
-----END PGP PUBLIC KEY BLOCK-----`,
});constructor
new UserGpgKey(name: string, args: UserGpgKeyArgs, opts?: pulumi.CustomResourceOptions)Create a UserGpgKey resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: UserGpgKeyState, opts?: pulumi.CustomResourceOptions): UserGpgKeyGet an existing UserGpgKey resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is UserGpgKeyReturns true if the given object is an instance of UserGpgKey. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property armoredPublicKey
public armoredPublicKey: pulumi.Output<string>;Your public GPG key, generated in ASCII-armored format. See Generating a new GPG key for help on creating a GPG key.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property keyId
public keyId: pulumi.Output<string>;The key ID of the GPG key, e.g. 3262EFF25BA0D270
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource UserInvitationAccepter
class UserInvitationAccepter extends CustomResourceProvides a resource to manage GitHub repository collaborator invitations.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const exampleRepository = new github.Repository("example", {});
const exampleRepositoryCollaborator = new github.RepositoryCollaborator("example", {
permission: "push",
repository: exampleRepository.name,
username: "example-username",
});
const invitee = new github.Provider("invitee", {
token: var_invitee_token,
});
const exampleUserInvitationAccepter = new github.UserInvitationAccepter("example", {
invitationId: exampleRepositoryCollaborator.invitationId,
}, { provider: invitee });constructor
new UserInvitationAccepter(name: string, args: UserInvitationAccepterArgs, opts?: pulumi.CustomResourceOptions)Create a UserInvitationAccepter resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: UserInvitationAccepterState, opts?: pulumi.CustomResourceOptions): UserInvitationAccepterGet an existing UserInvitationAccepter resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is UserInvitationAccepterReturns true if the given object is an instance of UserInvitationAccepter. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property invitationId
public invitationId: pulumi.Output<string>;ID of the invitation to accept
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource UserSshKey
class UserSshKey extends CustomResourceProvides a GitHub user’s SSH key resource.
This resource allows you to add/remove SSH keys from your user account.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as fs from "fs";
import * as github from "@pulumi/github";
const example = new github.UserSshKey("example", {
key: fs.readFileSync("~/.ssh/id_rsa.pub", "utf-8"),
title: "example title",
});constructor
new UserSshKey(name: string, args: UserSshKeyArgs, opts?: pulumi.CustomResourceOptions)Create a UserSshKey resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: UserSshKeyState, opts?: pulumi.CustomResourceOptions): UserSshKeyGet an existing UserSshKey resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is UserSshKeyReturns true if the given object is an instance of UserSshKey. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property etag
public etag: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property key
public key: pulumi.Output<string>;The public SSH key to add to your GitHub account.
property title
public title: pulumi.Output<string>;A descriptive name for the new key. e.g. Personal MacBook Air
property url
public url: pulumi.Output<string>;The URL of the SSH key
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Functions
Function getActionsPublicKey
getActionsPublicKey(args: GetActionsPublicKeyArgs, opts?: pulumi.InvokeOptions): Promise<GetActionsPublicKeyResult>Use this data source to retrieve information about a GitHub Actions public key. This data source is required to be used with other GitHub secrets interactions.
Note that the provider token must have admin rights to a repository to retrieve it’s action public key.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const example = pulumi.output(github.getActionsPublicKey({
repository: "exampleRepo",
}, { async: true }));Function getBranch
getBranch(args: GetBranchArgs, opts?: pulumi.InvokeOptions): Promise<GetBranchResult>Use this data source to retrieve information about a repository branch.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const development = pulumi.output(github.getBranch({
branch: "development",
repository: "example",
}, { async: true }));Function getCollaborators
getCollaborators(args: GetCollaboratorsArgs, opts?: pulumi.InvokeOptions): Promise<GetCollaboratorsResult>Use this data source to retrieve the collaborators for a given repository.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const test = pulumi.output(github.getCollaborators({
owner: "exampleOwner",
repository: "exampleRepository",
}, { async: true }));Function getIpRanges
getIpRanges(opts?: pulumi.InvokeOptions): Promise<GetIpRangesResult>Use this data source to retrieve information about GitHub’s IP addresses.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const test = pulumi.output(github.getIpRanges({ async: true }));Function getMembership
getMembership(args: GetMembershipArgs, opts?: pulumi.InvokeOptions): Promise<GetMembershipResult>Use this data source to find out if a user is a member of your organization, as well as what role they have within it. If the user’s membership in the organization is pending their acceptance of an invite, the role they would have once they accept will be returned.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const membershipForSomeUser = pulumi.output(github.getMembership({
username: "SomeUser",
}, { async: true }));Function getOrganizationTeamSyncGroups
getOrganizationTeamSyncGroups(opts?: pulumi.InvokeOptions): Promise<GetOrganizationTeamSyncGroupsResult>Use this data source to retrieve the identity provider (IdP) groups for an organization.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const test = pulumi.output(github.getOrganizationTeamSyncGroups({ async: true }));Function getRelease
getRelease(args: GetReleaseArgs, opts?: pulumi.InvokeOptions): Promise<GetReleaseResult>Use this data source to retrieve information about a GitHub release in a specific repository.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const example = pulumi.output(github.getRelease({
owner: "example-owner",
repository: "example-repository",
retrieveBy: "latest",
}, { async: true }));Function getRepositories
getRepositories(args: GetRepositoriesArgs, opts?: pulumi.InvokeOptions): Promise<GetRepositoriesResult>Note: The data source will return a maximum of
1000repositories as documented in official API docs.
Use this data source to retrieve a list of GitHub repositories using a search query.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const example = pulumi.output(github.getRepositories({
query: "org:hashicorp language:Go",
}, { async: true }));Function getRepository
getRepository(args?: GetRepositoryArgs, opts?: pulumi.InvokeOptions): Promise<GetRepositoryResult>Function getTeam
getTeam(args: GetTeamArgs, opts?: pulumi.InvokeOptions): Promise<GetTeamResult>Use this data source to retrieve information about a GitHub team.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const example = pulumi.output(github.getTeam({
slug: "example",
}, { async: true }));Function getUser
getUser(args: GetUserArgs, opts?: pulumi.InvokeOptions): Promise<GetUserResult>Use this data source to retrieve information about a GitHub user.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as github from "@pulumi/github";
const example = pulumi.output(github.getUser({
username: "example",
}, { async: true }));Others
interface ActionsSecretArgs
interface ActionsSecretArgsThe set of arguments for constructing a ActionsSecret resource.
property plaintextValue
plaintextValue: pulumi.Input<string>;Plaintext value of the secret to be encrypted
property repository
repository: pulumi.Input<string>;Name of the repository
property secretName
secretName: pulumi.Input<string>;Name of the secret
interface ActionsSecretState
interface ActionsSecretStateInput properties used for looking up and filtering ActionsSecret resources.
property createdAt
createdAt?: pulumi.Input<string>;Date of actionsSecret creation.
property plaintextValue
plaintextValue?: pulumi.Input<string>;Plaintext value of the secret to be encrypted
property repository
repository?: pulumi.Input<string>;Name of the repository
property secretName
secretName?: pulumi.Input<string>;Name of the secret
property updatedAt
updatedAt?: pulumi.Input<string>;Date of actionsSecret update.
interface BranchArgs
interface BranchArgsThe set of arguments for constructing a Branch resource.
property branch
branch: pulumi.Input<string>;The repository branch to create.
property repository
repository: pulumi.Input<string>;The GitHub repository name.
property sourceBranch
sourceBranch?: pulumi.Input<string>;The branch name to start from. Defaults to master.
property sourceSha
sourceSha?: pulumi.Input<string>;The commit hash to start from. Defaults to the tip of sourceBranch. If provided, sourceBranch is ignored.
interface BranchProtectionArgs
interface BranchProtectionArgsThe set of arguments for constructing a BranchProtection resource.
property branch
branch: pulumi.Input<string>;The Git branch to protect.
property enforceAdmins
enforceAdmins?: pulumi.Input<boolean>;Boolean, setting this to true enforces status checks for repository administrators.
property repository
repository: pulumi.Input<string>;The GitHub repository name.
property requireSignedCommits
requireSignedCommits?: pulumi.Input<boolean>;Boolean, setting this to true requires all commits to be signed with GPG.
property requiredPullRequestReviews
requiredPullRequestReviews?: pulumi.Input<BranchProtectionRequiredPullRequestReviews>;Enforce restrictions for pull request reviews. See Required Pull Request Reviews below for details.
property requiredStatusChecks
requiredStatusChecks?: pulumi.Input<BranchProtectionRequiredStatusChecks>;Enforce restrictions for required status checks. See Required Status Checks below for details.
property restrictions
restrictions?: pulumi.Input<BranchProtectionRestrictions>;Enforce restrictions for the users and teams that may push to the branch. See Restrictions below for details.
interface BranchProtectionState
interface BranchProtectionStateInput properties used for looking up and filtering BranchProtection resources.
property branch
branch?: pulumi.Input<string>;The Git branch to protect.
property enforceAdmins
enforceAdmins?: pulumi.Input<boolean>;Boolean, setting this to true enforces status checks for repository administrators.
property etag
etag?: pulumi.Input<string>;property repository
repository?: pulumi.Input<string>;The GitHub repository name.
property requireSignedCommits
requireSignedCommits?: pulumi.Input<boolean>;Boolean, setting this to true requires all commits to be signed with GPG.
property requiredPullRequestReviews
requiredPullRequestReviews?: pulumi.Input<BranchProtectionRequiredPullRequestReviews>;Enforce restrictions for pull request reviews. See Required Pull Request Reviews below for details.
property requiredStatusChecks
requiredStatusChecks?: pulumi.Input<BranchProtectionRequiredStatusChecks>;Enforce restrictions for required status checks. See Required Status Checks below for details.
property restrictions
restrictions?: pulumi.Input<BranchProtectionRestrictions>;Enforce restrictions for the users and teams that may push to the branch. See Restrictions below for details.
interface BranchState
interface BranchStateInput properties used for looking up and filtering Branch resources.
property branch
branch?: pulumi.Input<string>;The repository branch to create.
property etag
etag?: pulumi.Input<string>;An etag representing the Branch object.
property ref
ref?: pulumi.Input<string>;A string representing a branch reference, in the form of refs/heads/<branch>.
property repository
repository?: pulumi.Input<string>;The GitHub repository name.
property sha
sha?: pulumi.Input<string>;A string storing the reference’s HEAD commit’s SHA1.
property sourceBranch
sourceBranch?: pulumi.Input<string>;The branch name to start from. Defaults to master.
property sourceSha
sourceSha?: pulumi.Input<string>;The commit hash to start from. Defaults to the tip of sourceBranch. If provided, sourceBranch is ignored.
interface GetActionsPublicKeyArgs
interface GetActionsPublicKeyArgsA collection of arguments for invoking getActionsPublicKey.
property repository
repository: string;Name of the repository to get public key from.
interface GetActionsPublicKeyResult
interface GetActionsPublicKeyResultA collection of values returned by getActionsPublicKey.
property id
id: string;The provider-assigned unique ID for this managed resource.
property key
key: string;Actual key retrieved.
property keyId
keyId: string;ID of the key that has been retrieved.
property repository
repository: string;interface GetBranchArgs
interface GetBranchArgsA collection of arguments for invoking getBranch.
property branch
branch: string;The repository branch to create.
property repository
repository: string;The GitHub repository name.
interface GetBranchResult
interface GetBranchResultA collection of values returned by getBranch.
property branch
branch: string;property etag
etag: string;An etag representing the Branch object.
property id
id: string;The provider-assigned unique ID for this managed resource.
property ref
ref: string;A string representing a branch reference, in the form of refs/heads/<branch>.
property repository
repository: string;property sha
sha: string;A string storing the reference’s HEAD commit’s SHA1.
interface GetCollaboratorsArgs
interface GetCollaboratorsArgsA collection of arguments for invoking getCollaborators.
property affiliation
affiliation?: undefined | string;Filter collaborators returned by their affiliation. Can be one of: outside, direct, all. Defaults to all.
property owner
owner: string;The organization that owns the repository.
property repository
repository: string;The name of the repository.
interface GetCollaboratorsResult
interface GetCollaboratorsResultA collection of values returned by getCollaborators.
property affiliation
affiliation?: undefined | string;property collaborators
collaborators: GetCollaboratorsCollaborator[];An Array of GitHub collaborators. Each collaborator block consists of the fields documented below.
property id
id: string;The provider-assigned unique ID for this managed resource.
property owner
owner: string;property repository
repository: string;function getEnv
getEnv(vars: string[]): string | undefinedfunction getEnvBoolean
getEnvBoolean(vars: string[]): boolean | undefinedfunction getEnvNumber
getEnvNumber(vars: string[]): number | undefinedinterface GetIpRangesResult
interface GetIpRangesResultA collection of values returned by getIpRanges.
property gits
gits: string[];An Array of IP addresses in CIDR format specifying the Git servers.
property hooks
hooks: string[];An Array of IP addresses in CIDR format specifying the addresses that incoming service hooks will originate from.
property id
id: string;The provider-assigned unique ID for this managed resource.
property importers
importers: string[];An Array of IP addresses in CIDR format specifying the A records for GitHub Importer.
property pages
pages: string[];An Array of IP addresses in CIDR format specifying the A records for GitHub Pages.
interface GetMembershipArgs
interface GetMembershipArgsA collection of arguments for invoking getMembership.
property username
username: string;The username to lookup in the organization.
interface GetMembershipResult
interface GetMembershipResultA collection of values returned by getMembership.
property etag
etag: string;An etag representing the membership object.
property id
id: string;The provider-assigned unique ID for this managed resource.
property role
role: string;admin or member – the role the user has within the organization.
property username
username: string;The username.
interface GetOrganizationTeamSyncGroupsResult
interface GetOrganizationTeamSyncGroupsResultA collection of values returned by getOrganizationTeamSyncGroups.
property groups
groups: GetOrganizationTeamSyncGroupsGroup[];An Array of GitHub Identity Provider Groups. Each group block consists of the fields documented below.
property id
id: string;The provider-assigned unique ID for this managed resource.
interface GetReleaseArgs
interface GetReleaseArgsA collection of arguments for invoking getRelease.
property owner
owner: string;Owner of the repository.
property releaseId
releaseId?: undefined | number;ID of the release to retrieve. Must be specified when retrieveBy = id.
property releaseTag
releaseTag?: undefined | string;Tag of the release to retrieve. Must be specified when retrieveBy = tag.
property repository
repository: string;Name of the repository to retrieve the release from.
property retrieveBy
retrieveBy: string;Describes how to fetch the release. Valid values are id, tag, latest.
interface GetReleaseResult
interface GetReleaseResultA collection of values returned by getRelease.
property assertsUrl
assertsUrl: string;URL of any associated assets with the release
property body
body: string;Contents of the description (body) of a release
property createdAt
createdAt: string;Date of release creation
property draft
draft: boolean;(Boolean) indicates whether the release is a draft
property htmlUrl
htmlUrl: string;URL directing to detailed information on the release
property id
id: string;The provider-assigned unique ID for this managed resource.
property name
name: string;Name of release
property owner
owner: string;property prerelease
prerelease: boolean;(Boolean) indicates whether the release is a prerelease
property publishedAt
publishedAt: string;Date of release publishing
property releaseId
releaseId?: undefined | number;ID of release
property releaseTag
releaseTag?: undefined | string;Tag of release
property repository
repository: string;property retrieveBy
retrieveBy: string;property tarballUrl
tarballUrl: string;Download URL of a specific release in tar.gz format
property targetCommitish
targetCommitish: string;Commitish value that determines where the Git release is created from
property uploadUrl
uploadUrl: string;URL that can be used to upload Assets to the release
property url
url: string;Base URL of the release
property zipballUrl
zipballUrl: string;Download URL of a specific release in zip format
interface GetRepositoriesArgs
interface GetRepositoriesArgsA collection of arguments for invoking getRepositories.
property query
query: string;Search query. See documentation for the search syntax.
property sort
sort?: undefined | string;Sorts the repositories returned by the specified attribute. Valid values include stars, fork, and updated. Defaults to updated.
interface GetRepositoriesResult
interface GetRepositoriesResultA collection of values returned by getRepositories.
property fullNames
fullNames: string[];property id
id: string;The provider-assigned unique ID for this managed resource.
property names
names: string[];property query
query: string;property sort
sort?: undefined | string;interface GetRepositoryArgs
interface GetRepositoryArgsA collection of arguments for invoking getRepository.
property fullName
fullName?: undefined | string;Full name of the repository (in org/name format).
property name
name?: undefined | string;The name of the repository.
interface GetRepositoryResult
interface GetRepositoryResultA collection of values returned by getRepository.
property allowMergeCommit
allowMergeCommit: boolean;Whether the repository allows merge commits.
property allowRebaseMerge
allowRebaseMerge: boolean;Whether the repository allows rebase merges.
property allowSquashMerge
allowSquashMerge: boolean;Whether the repository allows squash merges.
property archived
archived: boolean;Whether the repository is archived.
property defaultBranch
defaultBranch: string;The name of the default branch of the repository.
property description
description: string;A description of the repository.
property fullName
fullName?: undefined | string;property gitCloneUrl
gitCloneUrl: string;URL that can be provided to git clone to clone the repository anonymously via the git protocol.
property hasDownloads
hasDownloads: boolean;Whether the repository has Downloads feature enabled.
property hasIssues
hasIssues: boolean;Whether the repository has GitHub Issues enabled.
property hasProjects
hasProjects: boolean;Whether the repository has the GitHub Projects enabled.
property hasWiki
hasWiki: boolean;Whether the repository has the GitHub Wiki enabled.
property homepageUrl
homepageUrl: string;URL of a page describing the project.
property htmlUrl
htmlUrl: string;URL to the repository on the web.
property httpCloneUrl
httpCloneUrl: string;URL that can be provided to git clone to clone the repository via HTTPS.
property id
id: string;The provider-assigned unique ID for this managed resource.
property name
name?: undefined | string;property nodeId
nodeId: string;property private
private: boolean;Whether the repository is private.
property sshCloneUrl
sshCloneUrl: string;URL that can be provided to git clone to clone the repository via SSH.
property svnUrl
svnUrl: string;URL that can be provided to svn checkout to check out the repository via GitHub’s Subversion protocol emulation.
property topics
topics: string[];The list of topics of the repository.
interface GetTeamArgs
interface GetTeamArgsA collection of arguments for invoking getTeam.
property slug
slug: string;The team slug.
interface GetTeamResult
interface GetTeamResultA collection of values returned by getTeam.
property description
description: string;the team’s description.
property id
id: string;The provider-assigned unique ID for this managed resource.
property members
members: string[];List of team members
property name
name: string;the team’s full name.
property nodeId
nodeId: string;property permission
permission: string;the team’s permission level.
property privacy
privacy: string;the team’s privacy type.
property slug
slug: string;interface GetUserArgs
interface GetUserArgsA collection of arguments for invoking getUser.
property username
username: string;The username.
interface GetUserResult
interface GetUserResultA collection of values returned by getUser.
property avatarUrl
avatarUrl: string;the user’s avatar URL.
property bio
bio: string;the user’s bio.
property blog
blog: string;the user’s blog location.
property company
company: string;the user’s company name.
property createdAt
createdAt: string;the creation date.
property email
email: string;the user’s email.
property followers
followers: number;the number of followers.
property following
following: number;the number of following users.
property gpgKeys
gpgKeys: string[];list of user’s GPG keys.
property gravatarId
gravatarId: string;the user’s gravatar ID.
property id
id: string;The provider-assigned unique ID for this managed resource.
property location
location: string;the user’s location.
property login
login: string;the user’s login.
property name
name: string;the user’s full name.
property nodeId
nodeId: string;property publicGists
publicGists: number;the number of public gists.
property publicRepos
publicRepos: number;the number of public repositories.
property siteAdmin
siteAdmin: boolean;whether the user is a GitHub admin.
property sshKeys
sshKeys: string[];list of user’s SSH keys.
property updatedAt
updatedAt: string;the update date.
property username
username: string;function getVersion
getVersion(): stringinterface IssueLabelArgs
interface IssueLabelArgsThe set of arguments for constructing a IssueLabel resource.
property color
color: pulumi.Input<string>;A 6 character hex code, without the leading #, identifying the color of the label.
property description
description?: pulumi.Input<string>;A short description of the label.
property name
name?: pulumi.Input<string>;The name of the label.
property repository
repository: pulumi.Input<string>;The GitHub repository
interface IssueLabelState
interface IssueLabelStateInput properties used for looking up and filtering IssueLabel resources.
property color
color?: pulumi.Input<string>;A 6 character hex code, without the leading #, identifying the color of the label.
property description
description?: pulumi.Input<string>;A short description of the label.
property etag
etag?: pulumi.Input<string>;property name
name?: pulumi.Input<string>;The name of the label.
property repository
repository?: pulumi.Input<string>;The GitHub repository
property url
url?: pulumi.Input<string>;The URL to the issue label
interface MembershipArgs
interface MembershipArgsThe set of arguments for constructing a Membership resource.
property role
role?: pulumi.Input<string>;The role of the user within the organization.
Must be one of member or admin. Defaults to member.
property username
username: pulumi.Input<string>;The user to add to the organization.
interface MembershipState
interface MembershipStateInput properties used for looking up and filtering Membership resources.
property etag
etag?: pulumi.Input<string>;property role
role?: pulumi.Input<string>;The role of the user within the organization.
Must be one of member or admin. Defaults to member.
property username
username?: pulumi.Input<string>;The user to add to the organization.
interface OrganizationBlockArgs
interface OrganizationBlockArgsThe set of arguments for constructing a OrganizationBlock resource.
property username
username: pulumi.Input<string>;The name of the user to block.
interface OrganizationBlockState
interface OrganizationBlockStateInput properties used for looking up and filtering OrganizationBlock resources.
property etag
etag?: pulumi.Input<string>;property username
username?: pulumi.Input<string>;The name of the user to block.
interface OrganizationProjectArgs
interface OrganizationProjectArgsThe set of arguments for constructing a OrganizationProject resource.
property body
body?: pulumi.Input<string>;The body of the project.
property name
name?: pulumi.Input<string>;The name of the project.
interface OrganizationProjectState
interface OrganizationProjectStateInput properties used for looking up and filtering OrganizationProject resources.
property body
body?: pulumi.Input<string>;The body of the project.
property etag
etag?: pulumi.Input<string>;property name
name?: pulumi.Input<string>;The name of the project.
property url
url?: pulumi.Input<string>;URL of the project
interface OrganizationWebhookArgs
interface OrganizationWebhookArgsThe set of arguments for constructing a OrganizationWebhook resource.
property active
active?: pulumi.Input<boolean>;Indicate of the webhook should receive events. Defaults to true.
property configuration
configuration?: pulumi.Input<OrganizationWebhookConfiguration>;key/value pair of configuration for this webhook. Available keys are url, contentType, secret and insecureSsl.
property events
events: pulumi.Input<pulumi.Input<string>[]>;A list of events which should trigger the webhook. See a list of available events
interface OrganizationWebhookState
interface OrganizationWebhookStateInput properties used for looking up and filtering OrganizationWebhook resources.
property active
active?: pulumi.Input<boolean>;Indicate of the webhook should receive events. Defaults to true.
property configuration
configuration?: pulumi.Input<OrganizationWebhookConfiguration>;key/value pair of configuration for this webhook. Available keys are url, contentType, secret and insecureSsl.
property etag
etag?: pulumi.Input<string>;property events
events?: pulumi.Input<pulumi.Input<string>[]>;A list of events which should trigger the webhook. See a list of available events
property url
url?: pulumi.Input<string>;URL of the webhook
interface ProjectColumnArgs
interface ProjectColumnArgsThe set of arguments for constructing a ProjectColumn resource.
property name
name?: pulumi.Input<string>;The name of the column.
property projectId
projectId: pulumi.Input<string>;The ID of an existing project that the column will be created in.
interface ProjectColumnState
interface ProjectColumnStateInput properties used for looking up and filtering ProjectColumn resources.
property etag
etag?: pulumi.Input<string>;property name
name?: pulumi.Input<string>;The name of the column.
property projectId
projectId?: pulumi.Input<string>;The ID of an existing project that the column will be created in.
interface ProviderArgs
interface ProviderArgsThe set of arguments for constructing a Provider resource.
property anonymous
anonymous?: pulumi.Input<boolean>;Authenticate without a token. When anonymousis true, the provider will not be able to access resourcesthat require
authentication.
property baseUrl
baseUrl?: pulumi.Input<string>;The GitHub Base API URL
property individual
individual?: pulumi.Input<boolean>;Run outside an organization. When individualis true, the provider will run outside the scope of anorganization.
property insecure
insecure?: pulumi.Input<boolean>;Whether server should be accessed without verifying the TLS certificate.
property organization
organization?: pulumi.Input<string>;The GitHub organization name to manage. If individual is false, organization is required.
property token
token?: pulumi.Input<string>;The OAuth token used to connect to GitHub. If anonymous is false, token is required.
interface RepositoryArgs
interface RepositoryArgsThe set of arguments for constructing a Repository resource.
property allowMergeCommit
allowMergeCommit?: pulumi.Input<boolean>;Set to false to disable merge commits on the repository.
property allowRebaseMerge
allowRebaseMerge?: pulumi.Input<boolean>;Set to false to disable rebase merges on the repository.
property allowSquashMerge
allowSquashMerge?: pulumi.Input<boolean>;Set to false to disable squash merges on the repository.
property archived
archived?: pulumi.Input<boolean>;Specifies if the repository should be archived. Defaults to false. NOTE Currently, the API does not support unarchiving.
property autoInit
autoInit?: pulumi.Input<boolean>;Set to true to produce an initial commit in the repository.
property defaultBranch
defaultBranch?: pulumi.Input<string>;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.
property deleteBranchOnMerge
deleteBranchOnMerge?: pulumi.Input<boolean>;Automatically delete head branch after a pull request is merged. Defaults to false.
property description
description?: pulumi.Input<string>;A description of the repository.
property gitignoreTemplate
gitignoreTemplate?: pulumi.Input<string>;Use the name of the template without the extension. For example, “Haskell”.
property hasDownloads
hasDownloads?: pulumi.Input<boolean>;Set to true to enable the (deprecated) downloads features on the repository.
property hasIssues
hasIssues?: pulumi.Input<boolean>;Set to true to enable the GitHub Issues features
on the repository.
property hasProjects
hasProjects?: pulumi.Input<boolean>;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.
property hasWiki
hasWiki?: pulumi.Input<boolean>;Set to true to enable the GitHub Wiki features on
the repository.
property homepageUrl
homepageUrl?: pulumi.Input<string>;URL of a page describing the project.
property isTemplate
isTemplate?: pulumi.Input<boolean>;Set to true to tell GitHub that this is a template repository.
property licenseTemplate
licenseTemplate?: pulumi.Input<string>;Use the name of the template without the extension. For example, “mit” or “mpl-2.0”.
property name
name?: pulumi.Input<string>;The name of the repository.
property private
private?: pulumi.Input<boolean>;Set to true to create a private repository.
Repositories are created as public (e.g. open source) by default.
property template
template?: pulumi.Input<RepositoryTemplate>;Use a template repository to create this resource. See Template Repositories below for details.
property topics
topics?: pulumi.Input<pulumi.Input<string>[]>;The list of topics of the repository.
interface RepositoryCollaboratorArgs
interface RepositoryCollaboratorArgsThe set of arguments for constructing a RepositoryCollaborator resource.
property permission
permission?: pulumi.Input<string>;The permission of the outside collaborator for the repository.
Must be one of pull, push, maintain, triage or admin. Defaults to push.
property repository
repository: pulumi.Input<string>;The GitHub repository
property username
username: pulumi.Input<string>;The user to add to the repository as a collaborator.
interface RepositoryCollaboratorState
interface RepositoryCollaboratorStateInput properties used for looking up and filtering RepositoryCollaborator resources.
property invitationId
invitationId?: pulumi.Input<string>;ID of the invitation to be used in github..UserInvitationAccepter
property permission
permission?: pulumi.Input<string>;The permission of the outside collaborator for the repository.
Must be one of pull, push, maintain, triage or admin. Defaults to push.
property repository
repository?: pulumi.Input<string>;The GitHub repository
property username
username?: pulumi.Input<string>;The user to add to the repository as a collaborator.
interface RepositoryDeployKeyArgs
interface RepositoryDeployKeyArgsThe set of arguments for constructing a RepositoryDeployKey resource.
property key
key: pulumi.Input<string>;A SSH key.
property readOnly
readOnly?: pulumi.Input<boolean>;A boolean qualifying the key to be either read only or read/write.
property repository
repository: pulumi.Input<string>;Name of the GitHub repository.
property title
title: pulumi.Input<string>;A title.
interface RepositoryDeployKeyState
interface RepositoryDeployKeyStateInput properties used for looking up and filtering RepositoryDeployKey resources.
property etag
etag?: pulumi.Input<string>;property key
key?: pulumi.Input<string>;A SSH key.
property readOnly
readOnly?: pulumi.Input<boolean>;A boolean qualifying the key to be either read only or read/write.
property repository
repository?: pulumi.Input<string>;Name of the GitHub repository.
property title
title?: pulumi.Input<string>;A title.
interface RepositoryFileArgs
interface RepositoryFileArgsThe set of arguments for constructing a RepositoryFile resource.
property branch
branch?: pulumi.Input<string>;Git branch (defaults to master).
The branch must already exist, it will not be created if it does not already exist.
property commitAuthor
commitAuthor?: pulumi.Input<string>;Committer author name to use.
property commitEmail
commitEmail?: pulumi.Input<string>;Committer email address to use.
property commitMessage
commitMessage?: pulumi.Input<string>;Commit message when adding or updating the managed file.
property content
content: pulumi.Input<string>;The file content.
property file
file: pulumi.Input<string>;The path of the file to manage.
property repository
repository: pulumi.Input<string>;The repository name
interface RepositoryFileState
interface RepositoryFileStateInput properties used for looking up and filtering RepositoryFile resources.
property branch
branch?: pulumi.Input<string>;Git branch (defaults to master).
The branch must already exist, it will not be created if it does not already exist.
property commitAuthor
commitAuthor?: pulumi.Input<string>;Committer author name to use.
property commitEmail
commitEmail?: pulumi.Input<string>;Committer email address to use.
property commitMessage
commitMessage?: pulumi.Input<string>;Commit message when adding or updating the managed file.
property content
content?: pulumi.Input<string>;The file content.
property file
file?: pulumi.Input<string>;The path of the file to manage.
property repository
repository?: pulumi.Input<string>;The repository name
property sha
sha?: pulumi.Input<string>;The SHA blob of the file.
interface RepositoryProjectArgs
interface RepositoryProjectArgsThe set of arguments for constructing a RepositoryProject resource.
property body
body?: pulumi.Input<string>;The body of the project.
property name
name?: pulumi.Input<string>;The name of the project.
property repository
repository: pulumi.Input<string>;The repository of the project.
interface RepositoryProjectState
interface RepositoryProjectStateInput properties used for looking up and filtering RepositoryProject resources.
property body
body?: pulumi.Input<string>;The body of the project.
property etag
etag?: pulumi.Input<string>;property name
name?: pulumi.Input<string>;The name of the project.
property repository
repository?: pulumi.Input<string>;The repository of the project.
property url
url?: pulumi.Input<string>;URL of the project
interface RepositoryState
interface RepositoryStateInput properties used for looking up and filtering Repository resources.
property allowMergeCommit
allowMergeCommit?: pulumi.Input<boolean>;Set to false to disable merge commits on the repository.
property allowRebaseMerge
allowRebaseMerge?: pulumi.Input<boolean>;Set to false to disable rebase merges on the repository.
property allowSquashMerge
allowSquashMerge?: pulumi.Input<boolean>;Set to false to disable squash merges on the repository.
property archived
archived?: pulumi.Input<boolean>;Specifies if the repository should be archived. Defaults to false. NOTE Currently, the API does not support unarchiving.
property autoInit
autoInit?: pulumi.Input<boolean>;Set to true to produce an initial commit in the repository.
property defaultBranch
defaultBranch?: pulumi.Input<string>;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.
property deleteBranchOnMerge
deleteBranchOnMerge?: pulumi.Input<boolean>;Automatically delete head branch after a pull request is merged. Defaults to false.
property description
description?: pulumi.Input<string>;A description of the repository.
property etag
etag?: pulumi.Input<string>;property fullName
fullName?: pulumi.Input<string>;A string of the form “orgname/reponame”.
property gitCloneUrl
gitCloneUrl?: pulumi.Input<string>;URL that can be provided to git clone to clone the repository anonymously via the git protocol.
property gitignoreTemplate
gitignoreTemplate?: pulumi.Input<string>;Use the name of the template without the extension. For example, “Haskell”.
property hasDownloads
hasDownloads?: pulumi.Input<boolean>;Set to true to enable the (deprecated) downloads features on the repository.
property hasIssues
hasIssues?: pulumi.Input<boolean>;Set to true to enable the GitHub Issues features
on the repository.
property hasProjects
hasProjects?: pulumi.Input<boolean>;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.
property hasWiki
hasWiki?: pulumi.Input<boolean>;Set to true to enable the GitHub Wiki features on
the repository.
property homepageUrl
homepageUrl?: pulumi.Input<string>;URL of a page describing the project.
property htmlUrl
htmlUrl?: pulumi.Input<string>;URL to the repository on the web.
property httpCloneUrl
httpCloneUrl?: pulumi.Input<string>;URL that can be provided to git clone to clone the repository via HTTPS.
property isTemplate
isTemplate?: pulumi.Input<boolean>;Set to true to tell GitHub that this is a template repository.
property licenseTemplate
licenseTemplate?: pulumi.Input<string>;Use the name of the template without the extension. For example, “mit” or “mpl-2.0”.
property name
name?: pulumi.Input<string>;The name of the repository.
property nodeId
nodeId?: pulumi.Input<string>;property private
private?: pulumi.Input<boolean>;Set to true to create a private repository.
Repositories are created as public (e.g. open source) by default.
property sshCloneUrl
sshCloneUrl?: pulumi.Input<string>;URL that can be provided to git clone to clone the repository via SSH.
property svnUrl
svnUrl?: pulumi.Input<string>;URL that can be provided to svn checkout to check out the repository via GitHub’s Subversion protocol emulation.
property template
template?: pulumi.Input<RepositoryTemplate>;Use a template repository to create this resource. See Template Repositories below for details.
property topics
topics?: pulumi.Input<pulumi.Input<string>[]>;The list of topics of the repository.
interface RepositoryWebhookArgs
interface RepositoryWebhookArgsThe set of arguments for constructing a RepositoryWebhook resource.
property active
active?: pulumi.Input<boolean>;Indicate of the webhook should receive events. Defaults to true.
property configuration
configuration?: pulumi.Input<RepositoryWebhookConfiguration>;key/value pair of configuration for this webhook. Available keys are url, contentType, secret and insecureSsl. secret is the shared secret, see API documentation.
property events
events: pulumi.Input<pulumi.Input<string>[]>;A list of events which should trigger the webhook. See a list of available events.
property repository
repository: pulumi.Input<string>;The repository of the webhook.
interface RepositoryWebhookState
interface RepositoryWebhookStateInput properties used for looking up and filtering RepositoryWebhook resources.
property active
active?: pulumi.Input<boolean>;Indicate of the webhook should receive events. Defaults to true.
property configuration
configuration?: pulumi.Input<RepositoryWebhookConfiguration>;key/value pair of configuration for this webhook. Available keys are url, contentType, secret and insecureSsl. secret is the shared secret, see API documentation.
property etag
etag?: pulumi.Input<string>;property events
events?: pulumi.Input<pulumi.Input<string>[]>;A list of events which should trigger the webhook. See a list of available events.
property repository
repository?: pulumi.Input<string>;The repository of the webhook.
property url
url?: pulumi.Input<string>;URL of the webhook
interface TeamArgs
interface TeamArgsThe set of arguments for constructing a Team resource.
property description
description?: pulumi.Input<string>;A description of the team.
property ldapDn
ldapDn?: pulumi.Input<string>;The LDAP Distinguished Name of the group where membership will be synchronized. Only available in GitHub Enterprise.
property name
name?: pulumi.Input<string>;The name of the team.
property parentTeamId
parentTeamId?: pulumi.Input<number>;The ID of the parent team, if this is a nested team.
property privacy
privacy?: pulumi.Input<string>;The level of privacy for the team. Must be one of secret or closed.
Defaults to secret.
interface TeamMembershipArgs
interface TeamMembershipArgsThe set of arguments for constructing a TeamMembership resource.
property role
role?: pulumi.Input<string>;The role of the user within the team.
Must be one of member or maintainer. Defaults to member.
property teamId
teamId: pulumi.Input<string>;The GitHub team id
property username
username: pulumi.Input<string>;The user to add to the team.
interface TeamMembershipState
interface TeamMembershipStateInput properties used for looking up and filtering TeamMembership resources.
property etag
etag?: pulumi.Input<string>;property role
role?: pulumi.Input<string>;The role of the user within the team.
Must be one of member or maintainer. Defaults to member.
property teamId
teamId?: pulumi.Input<string>;The GitHub team id
property username
username?: pulumi.Input<string>;The user to add to the team.
interface TeamRepositoryArgs
interface TeamRepositoryArgsThe set of arguments for constructing a TeamRepository resource.
property permission
permission?: pulumi.Input<string>;The permissions of team members regarding the repository.
Must be one of pull, triage, push, maintain, or admin. Defaults to pull.
property repository
repository: pulumi.Input<string>;The repository to add to the team.
property teamId
teamId: pulumi.Input<string>;The GitHub team id
interface TeamRepositoryState
interface TeamRepositoryStateInput properties used for looking up and filtering TeamRepository resources.
property etag
etag?: pulumi.Input<string>;property permission
permission?: pulumi.Input<string>;The permissions of team members regarding the repository.
Must be one of pull, triage, push, maintain, or admin. Defaults to pull.
property repository
repository?: pulumi.Input<string>;The repository to add to the team.
property teamId
teamId?: pulumi.Input<string>;The GitHub team id
interface TeamState
interface TeamStateInput properties used for looking up and filtering Team resources.
property description
description?: pulumi.Input<string>;A description of the team.
property etag
etag?: pulumi.Input<string>;property ldapDn
ldapDn?: pulumi.Input<string>;The LDAP Distinguished Name of the group where membership will be synchronized. Only available in GitHub Enterprise.
property name
name?: pulumi.Input<string>;The name of the team.
property nodeId
nodeId?: pulumi.Input<string>;property parentTeamId
parentTeamId?: pulumi.Input<number>;The ID of the parent team, if this is a nested team.
property privacy
privacy?: pulumi.Input<string>;The level of privacy for the team. Must be one of secret or closed.
Defaults to secret.
property slug
slug?: pulumi.Input<string>;The slug of the created team, which may or may not differ from name,
depending on whether name contains “URL-unsafe” characters.
Useful when referencing the team in github..BranchProtection.
interface TeamSyncGroupMappingArgs
interface TeamSyncGroupMappingArgsThe set of arguments for constructing a TeamSyncGroupMapping resource.
property groups
groups?: pulumi.Input<pulumi.Input<TeamSyncGroupMappingGroup>[]>;An Array of GitHub Identity Provider Groups (or empty []). Each group block consists of the fields documented below.
property teamSlug
teamSlug: pulumi.Input<string>;Slug of the team
interface TeamSyncGroupMappingState
interface TeamSyncGroupMappingStateInput properties used for looking up and filtering TeamSyncGroupMapping resources.
property etag
etag?: pulumi.Input<string>;property groups
groups?: pulumi.Input<pulumi.Input<TeamSyncGroupMappingGroup>[]>;An Array of GitHub Identity Provider Groups (or empty []). Each group block consists of the fields documented below.
property teamSlug
teamSlug?: pulumi.Input<string>;Slug of the team
interface UserGpgKeyArgs
interface UserGpgKeyArgsThe set of arguments for constructing a UserGpgKey resource.
property armoredPublicKey
armoredPublicKey: pulumi.Input<string>;Your public GPG key, generated in ASCII-armored format. See Generating a new GPG key for help on creating a GPG key.
interface UserGpgKeyState
interface UserGpgKeyStateInput properties used for looking up and filtering UserGpgKey resources.
property armoredPublicKey
armoredPublicKey?: pulumi.Input<string>;Your public GPG key, generated in ASCII-armored format. See Generating a new GPG key for help on creating a GPG key.
property etag
etag?: pulumi.Input<string>;property keyId
keyId?: pulumi.Input<string>;The key ID of the GPG key, e.g. 3262EFF25BA0D270
interface UserInvitationAccepterArgs
interface UserInvitationAccepterArgsThe set of arguments for constructing a UserInvitationAccepter resource.
property invitationId
invitationId: pulumi.Input<string>;ID of the invitation to accept
interface UserInvitationAccepterState
interface UserInvitationAccepterStateInput properties used for looking up and filtering UserInvitationAccepter resources.
property invitationId
invitationId?: pulumi.Input<string>;ID of the invitation to accept
interface UserSshKeyArgs
interface UserSshKeyArgsThe set of arguments for constructing a UserSshKey resource.
property key
key: pulumi.Input<string>;The public SSH key to add to your GitHub account.
property title
title: pulumi.Input<string>;A descriptive name for the new key. e.g. Personal MacBook Air
interface UserSshKeyState
interface UserSshKeyStateInput properties used for looking up and filtering UserSshKey resources.
property etag
etag?: pulumi.Input<string>;property key
key?: pulumi.Input<string>;The public SSH key to add to your GitHub account.
property title
title?: pulumi.Input<string>;A descriptive name for the new key. e.g. Personal MacBook Air
property url
url?: pulumi.Input<string>;The URL of the SSH key