github

package
v1.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 31, 2020 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

A Pulumi package for creating and managing github cloud resources.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActionsSecret

type ActionsSecret struct {
	pulumi.CustomResourceState

	// Date of actionsSecret creation.
	CreatedAt pulumi.StringOutput `pulumi:"createdAt"`
	// Plaintext value of the secret to be encrypted
	PlaintextValue pulumi.StringOutput `pulumi:"plaintextValue"`
	// Name of the repository
	Repository pulumi.StringOutput `pulumi:"repository"`
	// Name of the secret
	SecretName pulumi.StringOutput `pulumi:"secretName"`
	// Date of actionsSecret update.
	UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"`
}

func GetActionsSecret

func GetActionsSecret(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ActionsSecretState, opts ...pulumi.ResourceOption) (*ActionsSecret, error)

GetActionsSecret gets an existing ActionsSecret resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewActionsSecret

func NewActionsSecret(ctx *pulumi.Context,
	name string, args *ActionsSecretArgs, opts ...pulumi.ResourceOption) (*ActionsSecret, error)

NewActionsSecret registers a new resource with the given unique name, arguments, and options.

type ActionsSecretArgs

type ActionsSecretArgs struct {
	// Plaintext value of the secret to be encrypted
	PlaintextValue pulumi.StringInput
	// Name of the repository
	Repository pulumi.StringInput
	// Name of the secret
	SecretName pulumi.StringInput
}

The set of arguments for constructing a ActionsSecret resource.

func (ActionsSecretArgs) ElementType

func (ActionsSecretArgs) ElementType() reflect.Type

type ActionsSecretState

type ActionsSecretState struct {
	// Date of actionsSecret creation.
	CreatedAt pulumi.StringPtrInput
	// Plaintext value of the secret to be encrypted
	PlaintextValue pulumi.StringPtrInput
	// Name of the repository
	Repository pulumi.StringPtrInput
	// Name of the secret
	SecretName pulumi.StringPtrInput
	// Date of actionsSecret update.
	UpdatedAt pulumi.StringPtrInput
}

func (ActionsSecretState) ElementType

func (ActionsSecretState) ElementType() reflect.Type

type Branch added in v1.2.0

type Branch struct {
	pulumi.CustomResourceState

	// The repository branch to create.
	Branch pulumi.StringOutput `pulumi:"branch"`
	// An etag representing the Branch object.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// A string representing a branch reference, in the form of `refs/heads/<branch>`.
	Ref pulumi.StringOutput `pulumi:"ref"`
	// The GitHub repository name.
	Repository pulumi.StringOutput `pulumi:"repository"`
	// A string storing the reference's `HEAD` commit's SHA1.
	Sha pulumi.StringOutput `pulumi:"sha"`
	// The branch name to start from. Defaults to `master`.
	SourceBranch pulumi.StringPtrOutput `pulumi:"sourceBranch"`
	// The commit hash to start from. Defaults to the tip of `sourceBranch`. If provided, `sourceBranch` is ignored.
	SourceSha pulumi.StringOutput `pulumi:"sourceSha"`
}

This 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

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.NewBranch(ctx, "development", &github.BranchArgs{
			Branch:     pulumi.String("development"),
			Repository: pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetBranch added in v1.2.0

func GetBranch(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BranchState, opts ...pulumi.ResourceOption) (*Branch, error)

GetBranch gets an existing Branch resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBranch added in v1.2.0

func NewBranch(ctx *pulumi.Context,
	name string, args *BranchArgs, opts ...pulumi.ResourceOption) (*Branch, error)

NewBranch registers a new resource with the given unique name, arguments, and options.

type BranchArgs added in v1.2.0

type BranchArgs struct {
	// The repository branch to create.
	Branch pulumi.StringInput
	// The GitHub repository name.
	Repository pulumi.StringInput
	// The branch name to start from. Defaults to `master`.
	SourceBranch pulumi.StringPtrInput
	// The commit hash to start from. Defaults to the tip of `sourceBranch`. If provided, `sourceBranch` is ignored.
	SourceSha pulumi.StringPtrInput
}

The set of arguments for constructing a Branch resource.

func (BranchArgs) ElementType added in v1.2.0

func (BranchArgs) ElementType() reflect.Type

type BranchProtection

type BranchProtection struct {
	pulumi.CustomResourceState

	// The Git branch to protect.
	Branch pulumi.StringOutput `pulumi:"branch"`
	// Boolean, setting this to `true` enforces status checks for repository administrators.
	EnforceAdmins pulumi.BoolPtrOutput `pulumi:"enforceAdmins"`
	Etag          pulumi.StringOutput  `pulumi:"etag"`
	// The GitHub repository name.
	Repository pulumi.StringOutput `pulumi:"repository"`
	// Boolean, setting this to `true` requires all commits to be signed with GPG.
	RequireSignedCommits pulumi.BoolPtrOutput `pulumi:"requireSignedCommits"`
	// Enforce restrictions for pull request reviews. See Required Pull Request Reviews below for details.
	RequiredPullRequestReviews BranchProtectionRequiredPullRequestReviewsPtrOutput `pulumi:"requiredPullRequestReviews"`
	// Enforce restrictions for required status checks. See Required Status Checks below for details.
	RequiredStatusChecks BranchProtectionRequiredStatusChecksPtrOutput `pulumi:"requiredStatusChecks"`
	// Enforce restrictions for the users and teams that may push to the branch. See Restrictions below for details.
	Restrictions BranchProtectionRestrictionsPtrOutput `pulumi:"restrictions"`
}

Protects 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.

func GetBranchProtection

func GetBranchProtection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BranchProtectionState, opts ...pulumi.ResourceOption) (*BranchProtection, error)

GetBranchProtection gets an existing BranchProtection resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBranchProtection

func NewBranchProtection(ctx *pulumi.Context,
	name string, args *BranchProtectionArgs, opts ...pulumi.ResourceOption) (*BranchProtection, error)

NewBranchProtection registers a new resource with the given unique name, arguments, and options.

type BranchProtectionArgs

type BranchProtectionArgs struct {
	// The Git branch to protect.
	Branch pulumi.StringInput
	// Boolean, setting this to `true` enforces status checks for repository administrators.
	EnforceAdmins pulumi.BoolPtrInput
	// The GitHub repository name.
	Repository pulumi.StringInput
	// Boolean, setting this to `true` requires all commits to be signed with GPG.
	RequireSignedCommits pulumi.BoolPtrInput
	// Enforce restrictions for pull request reviews. See Required Pull Request Reviews below for details.
	RequiredPullRequestReviews BranchProtectionRequiredPullRequestReviewsPtrInput
	// Enforce restrictions for required status checks. See Required Status Checks below for details.
	RequiredStatusChecks BranchProtectionRequiredStatusChecksPtrInput
	// Enforce restrictions for the users and teams that may push to the branch. See Restrictions below for details.
	Restrictions BranchProtectionRestrictionsPtrInput
}

The set of arguments for constructing a BranchProtection resource.

func (BranchProtectionArgs) ElementType

func (BranchProtectionArgs) ElementType() reflect.Type

type BranchProtectionRequiredPullRequestReviews

type BranchProtectionRequiredPullRequestReviews struct {
	DismissStaleReviews *bool    `pulumi:"dismissStaleReviews"`
	DismissalTeams      []string `pulumi:"dismissalTeams"`
	DismissalUsers      []string `pulumi:"dismissalUsers"`
	// Deprecated: Use enforce_admins instead
	IncludeAdmins                *bool `pulumi:"includeAdmins"`
	RequireCodeOwnerReviews      *bool `pulumi:"requireCodeOwnerReviews"`
	RequiredApprovingReviewCount *int  `pulumi:"requiredApprovingReviewCount"`
}

type BranchProtectionRequiredPullRequestReviewsArgs

type BranchProtectionRequiredPullRequestReviewsArgs struct {
	DismissStaleReviews pulumi.BoolPtrInput     `pulumi:"dismissStaleReviews"`
	DismissalTeams      pulumi.StringArrayInput `pulumi:"dismissalTeams"`
	DismissalUsers      pulumi.StringArrayInput `pulumi:"dismissalUsers"`
	// Deprecated: Use enforce_admins instead
	IncludeAdmins                pulumi.BoolPtrInput `pulumi:"includeAdmins"`
	RequireCodeOwnerReviews      pulumi.BoolPtrInput `pulumi:"requireCodeOwnerReviews"`
	RequiredApprovingReviewCount pulumi.IntPtrInput  `pulumi:"requiredApprovingReviewCount"`
}

func (BranchProtectionRequiredPullRequestReviewsArgs) ElementType

func (BranchProtectionRequiredPullRequestReviewsArgs) ToBranchProtectionRequiredPullRequestReviewsOutput

func (i BranchProtectionRequiredPullRequestReviewsArgs) ToBranchProtectionRequiredPullRequestReviewsOutput() BranchProtectionRequiredPullRequestReviewsOutput

func (BranchProtectionRequiredPullRequestReviewsArgs) ToBranchProtectionRequiredPullRequestReviewsOutputWithContext

func (i BranchProtectionRequiredPullRequestReviewsArgs) ToBranchProtectionRequiredPullRequestReviewsOutputWithContext(ctx context.Context) BranchProtectionRequiredPullRequestReviewsOutput

func (BranchProtectionRequiredPullRequestReviewsArgs) ToBranchProtectionRequiredPullRequestReviewsPtrOutput

func (i BranchProtectionRequiredPullRequestReviewsArgs) ToBranchProtectionRequiredPullRequestReviewsPtrOutput() BranchProtectionRequiredPullRequestReviewsPtrOutput

func (BranchProtectionRequiredPullRequestReviewsArgs) ToBranchProtectionRequiredPullRequestReviewsPtrOutputWithContext

func (i BranchProtectionRequiredPullRequestReviewsArgs) ToBranchProtectionRequiredPullRequestReviewsPtrOutputWithContext(ctx context.Context) BranchProtectionRequiredPullRequestReviewsPtrOutput

type BranchProtectionRequiredPullRequestReviewsInput

type BranchProtectionRequiredPullRequestReviewsInput interface {
	pulumi.Input

	ToBranchProtectionRequiredPullRequestReviewsOutput() BranchProtectionRequiredPullRequestReviewsOutput
	ToBranchProtectionRequiredPullRequestReviewsOutputWithContext(context.Context) BranchProtectionRequiredPullRequestReviewsOutput
}

BranchProtectionRequiredPullRequestReviewsInput is an input type that accepts BranchProtectionRequiredPullRequestReviewsArgs and BranchProtectionRequiredPullRequestReviewsOutput values. You can construct a concrete instance of `BranchProtectionRequiredPullRequestReviewsInput` via:

BranchProtectionRequiredPullRequestReviewsArgs{...}

type BranchProtectionRequiredPullRequestReviewsOutput

type BranchProtectionRequiredPullRequestReviewsOutput struct{ *pulumi.OutputState }

func (BranchProtectionRequiredPullRequestReviewsOutput) DismissStaleReviews

func (BranchProtectionRequiredPullRequestReviewsOutput) DismissalTeams

func (BranchProtectionRequiredPullRequestReviewsOutput) DismissalUsers

func (BranchProtectionRequiredPullRequestReviewsOutput) ElementType

func (BranchProtectionRequiredPullRequestReviewsOutput) IncludeAdmins deprecated

Deprecated: Use enforce_admins instead

func (BranchProtectionRequiredPullRequestReviewsOutput) RequireCodeOwnerReviews

func (BranchProtectionRequiredPullRequestReviewsOutput) RequiredApprovingReviewCount

func (o BranchProtectionRequiredPullRequestReviewsOutput) RequiredApprovingReviewCount() pulumi.IntPtrOutput

func (BranchProtectionRequiredPullRequestReviewsOutput) ToBranchProtectionRequiredPullRequestReviewsOutput

func (o BranchProtectionRequiredPullRequestReviewsOutput) ToBranchProtectionRequiredPullRequestReviewsOutput() BranchProtectionRequiredPullRequestReviewsOutput

func (BranchProtectionRequiredPullRequestReviewsOutput) ToBranchProtectionRequiredPullRequestReviewsOutputWithContext

func (o BranchProtectionRequiredPullRequestReviewsOutput) ToBranchProtectionRequiredPullRequestReviewsOutputWithContext(ctx context.Context) BranchProtectionRequiredPullRequestReviewsOutput

func (BranchProtectionRequiredPullRequestReviewsOutput) ToBranchProtectionRequiredPullRequestReviewsPtrOutput

func (o BranchProtectionRequiredPullRequestReviewsOutput) ToBranchProtectionRequiredPullRequestReviewsPtrOutput() BranchProtectionRequiredPullRequestReviewsPtrOutput

func (BranchProtectionRequiredPullRequestReviewsOutput) ToBranchProtectionRequiredPullRequestReviewsPtrOutputWithContext

func (o BranchProtectionRequiredPullRequestReviewsOutput) ToBranchProtectionRequiredPullRequestReviewsPtrOutputWithContext(ctx context.Context) BranchProtectionRequiredPullRequestReviewsPtrOutput

type BranchProtectionRequiredPullRequestReviewsPtrInput

type BranchProtectionRequiredPullRequestReviewsPtrInput interface {
	pulumi.Input

	ToBranchProtectionRequiredPullRequestReviewsPtrOutput() BranchProtectionRequiredPullRequestReviewsPtrOutput
	ToBranchProtectionRequiredPullRequestReviewsPtrOutputWithContext(context.Context) BranchProtectionRequiredPullRequestReviewsPtrOutput
}

BranchProtectionRequiredPullRequestReviewsPtrInput is an input type that accepts BranchProtectionRequiredPullRequestReviewsArgs, BranchProtectionRequiredPullRequestReviewsPtr and BranchProtectionRequiredPullRequestReviewsPtrOutput values. You can construct a concrete instance of `BranchProtectionRequiredPullRequestReviewsPtrInput` via:

        BranchProtectionRequiredPullRequestReviewsArgs{...}

or:

        nil

type BranchProtectionRequiredPullRequestReviewsPtrOutput

type BranchProtectionRequiredPullRequestReviewsPtrOutput struct{ *pulumi.OutputState }

func (BranchProtectionRequiredPullRequestReviewsPtrOutput) DismissStaleReviews

func (BranchProtectionRequiredPullRequestReviewsPtrOutput) DismissalTeams

func (BranchProtectionRequiredPullRequestReviewsPtrOutput) DismissalUsers

func (BranchProtectionRequiredPullRequestReviewsPtrOutput) Elem

func (BranchProtectionRequiredPullRequestReviewsPtrOutput) ElementType

func (BranchProtectionRequiredPullRequestReviewsPtrOutput) IncludeAdmins deprecated

Deprecated: Use enforce_admins instead

func (BranchProtectionRequiredPullRequestReviewsPtrOutput) RequireCodeOwnerReviews

func (BranchProtectionRequiredPullRequestReviewsPtrOutput) RequiredApprovingReviewCount

func (BranchProtectionRequiredPullRequestReviewsPtrOutput) ToBranchProtectionRequiredPullRequestReviewsPtrOutput

func (o BranchProtectionRequiredPullRequestReviewsPtrOutput) ToBranchProtectionRequiredPullRequestReviewsPtrOutput() BranchProtectionRequiredPullRequestReviewsPtrOutput

func (BranchProtectionRequiredPullRequestReviewsPtrOutput) ToBranchProtectionRequiredPullRequestReviewsPtrOutputWithContext

func (o BranchProtectionRequiredPullRequestReviewsPtrOutput) ToBranchProtectionRequiredPullRequestReviewsPtrOutputWithContext(ctx context.Context) BranchProtectionRequiredPullRequestReviewsPtrOutput

type BranchProtectionRequiredStatusChecks

type BranchProtectionRequiredStatusChecks struct {
	Contexts []string `pulumi:"contexts"`
	// Deprecated: Use enforce_admins instead
	IncludeAdmins *bool `pulumi:"includeAdmins"`
	Strict        *bool `pulumi:"strict"`
}

type BranchProtectionRequiredStatusChecksArgs

type BranchProtectionRequiredStatusChecksArgs struct {
	Contexts pulumi.StringArrayInput `pulumi:"contexts"`
	// Deprecated: Use enforce_admins instead
	IncludeAdmins pulumi.BoolPtrInput `pulumi:"includeAdmins"`
	Strict        pulumi.BoolPtrInput `pulumi:"strict"`
}

func (BranchProtectionRequiredStatusChecksArgs) ElementType

func (BranchProtectionRequiredStatusChecksArgs) ToBranchProtectionRequiredStatusChecksOutput

func (i BranchProtectionRequiredStatusChecksArgs) ToBranchProtectionRequiredStatusChecksOutput() BranchProtectionRequiredStatusChecksOutput

func (BranchProtectionRequiredStatusChecksArgs) ToBranchProtectionRequiredStatusChecksOutputWithContext

func (i BranchProtectionRequiredStatusChecksArgs) ToBranchProtectionRequiredStatusChecksOutputWithContext(ctx context.Context) BranchProtectionRequiredStatusChecksOutput

func (BranchProtectionRequiredStatusChecksArgs) ToBranchProtectionRequiredStatusChecksPtrOutput

func (i BranchProtectionRequiredStatusChecksArgs) ToBranchProtectionRequiredStatusChecksPtrOutput() BranchProtectionRequiredStatusChecksPtrOutput

func (BranchProtectionRequiredStatusChecksArgs) ToBranchProtectionRequiredStatusChecksPtrOutputWithContext

func (i BranchProtectionRequiredStatusChecksArgs) ToBranchProtectionRequiredStatusChecksPtrOutputWithContext(ctx context.Context) BranchProtectionRequiredStatusChecksPtrOutput

type BranchProtectionRequiredStatusChecksInput

type BranchProtectionRequiredStatusChecksInput interface {
	pulumi.Input

	ToBranchProtectionRequiredStatusChecksOutput() BranchProtectionRequiredStatusChecksOutput
	ToBranchProtectionRequiredStatusChecksOutputWithContext(context.Context) BranchProtectionRequiredStatusChecksOutput
}

BranchProtectionRequiredStatusChecksInput is an input type that accepts BranchProtectionRequiredStatusChecksArgs and BranchProtectionRequiredStatusChecksOutput values. You can construct a concrete instance of `BranchProtectionRequiredStatusChecksInput` via:

BranchProtectionRequiredStatusChecksArgs{...}

type BranchProtectionRequiredStatusChecksOutput

type BranchProtectionRequiredStatusChecksOutput struct{ *pulumi.OutputState }

func (BranchProtectionRequiredStatusChecksOutput) Contexts

func (BranchProtectionRequiredStatusChecksOutput) ElementType

func (BranchProtectionRequiredStatusChecksOutput) IncludeAdmins deprecated

Deprecated: Use enforce_admins instead

func (BranchProtectionRequiredStatusChecksOutput) Strict

func (BranchProtectionRequiredStatusChecksOutput) ToBranchProtectionRequiredStatusChecksOutput

func (o BranchProtectionRequiredStatusChecksOutput) ToBranchProtectionRequiredStatusChecksOutput() BranchProtectionRequiredStatusChecksOutput

func (BranchProtectionRequiredStatusChecksOutput) ToBranchProtectionRequiredStatusChecksOutputWithContext

func (o BranchProtectionRequiredStatusChecksOutput) ToBranchProtectionRequiredStatusChecksOutputWithContext(ctx context.Context) BranchProtectionRequiredStatusChecksOutput

func (BranchProtectionRequiredStatusChecksOutput) ToBranchProtectionRequiredStatusChecksPtrOutput

func (o BranchProtectionRequiredStatusChecksOutput) ToBranchProtectionRequiredStatusChecksPtrOutput() BranchProtectionRequiredStatusChecksPtrOutput

func (BranchProtectionRequiredStatusChecksOutput) ToBranchProtectionRequiredStatusChecksPtrOutputWithContext

func (o BranchProtectionRequiredStatusChecksOutput) ToBranchProtectionRequiredStatusChecksPtrOutputWithContext(ctx context.Context) BranchProtectionRequiredStatusChecksPtrOutput

type BranchProtectionRequiredStatusChecksPtrInput

type BranchProtectionRequiredStatusChecksPtrInput interface {
	pulumi.Input

	ToBranchProtectionRequiredStatusChecksPtrOutput() BranchProtectionRequiredStatusChecksPtrOutput
	ToBranchProtectionRequiredStatusChecksPtrOutputWithContext(context.Context) BranchProtectionRequiredStatusChecksPtrOutput
}

BranchProtectionRequiredStatusChecksPtrInput is an input type that accepts BranchProtectionRequiredStatusChecksArgs, BranchProtectionRequiredStatusChecksPtr and BranchProtectionRequiredStatusChecksPtrOutput values. You can construct a concrete instance of `BranchProtectionRequiredStatusChecksPtrInput` via:

        BranchProtectionRequiredStatusChecksArgs{...}

or:

        nil

type BranchProtectionRequiredStatusChecksPtrOutput

type BranchProtectionRequiredStatusChecksPtrOutput struct{ *pulumi.OutputState }

func (BranchProtectionRequiredStatusChecksPtrOutput) Contexts

func (BranchProtectionRequiredStatusChecksPtrOutput) Elem

func (BranchProtectionRequiredStatusChecksPtrOutput) ElementType

func (BranchProtectionRequiredStatusChecksPtrOutput) IncludeAdmins deprecated

Deprecated: Use enforce_admins instead

func (BranchProtectionRequiredStatusChecksPtrOutput) Strict

func (BranchProtectionRequiredStatusChecksPtrOutput) ToBranchProtectionRequiredStatusChecksPtrOutput

func (o BranchProtectionRequiredStatusChecksPtrOutput) ToBranchProtectionRequiredStatusChecksPtrOutput() BranchProtectionRequiredStatusChecksPtrOutput

func (BranchProtectionRequiredStatusChecksPtrOutput) ToBranchProtectionRequiredStatusChecksPtrOutputWithContext

func (o BranchProtectionRequiredStatusChecksPtrOutput) ToBranchProtectionRequiredStatusChecksPtrOutputWithContext(ctx context.Context) BranchProtectionRequiredStatusChecksPtrOutput

type BranchProtectionRestrictions

type BranchProtectionRestrictions struct {
	Apps  []string `pulumi:"apps"`
	Teams []string `pulumi:"teams"`
	Users []string `pulumi:"users"`
}

type BranchProtectionRestrictionsArgs

type BranchProtectionRestrictionsArgs struct {
	Apps  pulumi.StringArrayInput `pulumi:"apps"`
	Teams pulumi.StringArrayInput `pulumi:"teams"`
	Users pulumi.StringArrayInput `pulumi:"users"`
}

func (BranchProtectionRestrictionsArgs) ElementType

func (BranchProtectionRestrictionsArgs) ToBranchProtectionRestrictionsOutput

func (i BranchProtectionRestrictionsArgs) ToBranchProtectionRestrictionsOutput() BranchProtectionRestrictionsOutput

func (BranchProtectionRestrictionsArgs) ToBranchProtectionRestrictionsOutputWithContext

func (i BranchProtectionRestrictionsArgs) ToBranchProtectionRestrictionsOutputWithContext(ctx context.Context) BranchProtectionRestrictionsOutput

func (BranchProtectionRestrictionsArgs) ToBranchProtectionRestrictionsPtrOutput

func (i BranchProtectionRestrictionsArgs) ToBranchProtectionRestrictionsPtrOutput() BranchProtectionRestrictionsPtrOutput

func (BranchProtectionRestrictionsArgs) ToBranchProtectionRestrictionsPtrOutputWithContext

func (i BranchProtectionRestrictionsArgs) ToBranchProtectionRestrictionsPtrOutputWithContext(ctx context.Context) BranchProtectionRestrictionsPtrOutput

type BranchProtectionRestrictionsInput

type BranchProtectionRestrictionsInput interface {
	pulumi.Input

	ToBranchProtectionRestrictionsOutput() BranchProtectionRestrictionsOutput
	ToBranchProtectionRestrictionsOutputWithContext(context.Context) BranchProtectionRestrictionsOutput
}

BranchProtectionRestrictionsInput is an input type that accepts BranchProtectionRestrictionsArgs and BranchProtectionRestrictionsOutput values. You can construct a concrete instance of `BranchProtectionRestrictionsInput` via:

BranchProtectionRestrictionsArgs{...}

type BranchProtectionRestrictionsOutput

type BranchProtectionRestrictionsOutput struct{ *pulumi.OutputState }

func (BranchProtectionRestrictionsOutput) Apps

func (BranchProtectionRestrictionsOutput) ElementType

func (BranchProtectionRestrictionsOutput) Teams

func (BranchProtectionRestrictionsOutput) ToBranchProtectionRestrictionsOutput

func (o BranchProtectionRestrictionsOutput) ToBranchProtectionRestrictionsOutput() BranchProtectionRestrictionsOutput

func (BranchProtectionRestrictionsOutput) ToBranchProtectionRestrictionsOutputWithContext

func (o BranchProtectionRestrictionsOutput) ToBranchProtectionRestrictionsOutputWithContext(ctx context.Context) BranchProtectionRestrictionsOutput

func (BranchProtectionRestrictionsOutput) ToBranchProtectionRestrictionsPtrOutput

func (o BranchProtectionRestrictionsOutput) ToBranchProtectionRestrictionsPtrOutput() BranchProtectionRestrictionsPtrOutput

func (BranchProtectionRestrictionsOutput) ToBranchProtectionRestrictionsPtrOutputWithContext

func (o BranchProtectionRestrictionsOutput) ToBranchProtectionRestrictionsPtrOutputWithContext(ctx context.Context) BranchProtectionRestrictionsPtrOutput

func (BranchProtectionRestrictionsOutput) Users

type BranchProtectionRestrictionsPtrInput

type BranchProtectionRestrictionsPtrInput interface {
	pulumi.Input

	ToBranchProtectionRestrictionsPtrOutput() BranchProtectionRestrictionsPtrOutput
	ToBranchProtectionRestrictionsPtrOutputWithContext(context.Context) BranchProtectionRestrictionsPtrOutput
}

BranchProtectionRestrictionsPtrInput is an input type that accepts BranchProtectionRestrictionsArgs, BranchProtectionRestrictionsPtr and BranchProtectionRestrictionsPtrOutput values. You can construct a concrete instance of `BranchProtectionRestrictionsPtrInput` via:

        BranchProtectionRestrictionsArgs{...}

or:

        nil

type BranchProtectionRestrictionsPtrOutput

type BranchProtectionRestrictionsPtrOutput struct{ *pulumi.OutputState }

func (BranchProtectionRestrictionsPtrOutput) Apps

func (BranchProtectionRestrictionsPtrOutput) Elem

func (BranchProtectionRestrictionsPtrOutput) ElementType

func (BranchProtectionRestrictionsPtrOutput) Teams

func (BranchProtectionRestrictionsPtrOutput) ToBranchProtectionRestrictionsPtrOutput

func (o BranchProtectionRestrictionsPtrOutput) ToBranchProtectionRestrictionsPtrOutput() BranchProtectionRestrictionsPtrOutput

func (BranchProtectionRestrictionsPtrOutput) ToBranchProtectionRestrictionsPtrOutputWithContext

func (o BranchProtectionRestrictionsPtrOutput) ToBranchProtectionRestrictionsPtrOutputWithContext(ctx context.Context) BranchProtectionRestrictionsPtrOutput

func (BranchProtectionRestrictionsPtrOutput) Users

type BranchProtectionState

type BranchProtectionState struct {
	// The Git branch to protect.
	Branch pulumi.StringPtrInput
	// Boolean, setting this to `true` enforces status checks for repository administrators.
	EnforceAdmins pulumi.BoolPtrInput
	Etag          pulumi.StringPtrInput
	// The GitHub repository name.
	Repository pulumi.StringPtrInput
	// Boolean, setting this to `true` requires all commits to be signed with GPG.
	RequireSignedCommits pulumi.BoolPtrInput
	// Enforce restrictions for pull request reviews. See Required Pull Request Reviews below for details.
	RequiredPullRequestReviews BranchProtectionRequiredPullRequestReviewsPtrInput
	// Enforce restrictions for required status checks. See Required Status Checks below for details.
	RequiredStatusChecks BranchProtectionRequiredStatusChecksPtrInput
	// Enforce restrictions for the users and teams that may push to the branch. See Restrictions below for details.
	Restrictions BranchProtectionRestrictionsPtrInput
}

func (BranchProtectionState) ElementType

func (BranchProtectionState) ElementType() reflect.Type

type BranchState added in v1.2.0

type BranchState struct {
	// The repository branch to create.
	Branch pulumi.StringPtrInput
	// An etag representing the Branch object.
	Etag pulumi.StringPtrInput
	// A string representing a branch reference, in the form of `refs/heads/<branch>`.
	Ref pulumi.StringPtrInput
	// The GitHub repository name.
	Repository pulumi.StringPtrInput
	// A string storing the reference's `HEAD` commit's SHA1.
	Sha pulumi.StringPtrInput
	// The branch name to start from. Defaults to `master`.
	SourceBranch pulumi.StringPtrInput
	// The commit hash to start from. Defaults to the tip of `sourceBranch`. If provided, `sourceBranch` is ignored.
	SourceSha pulumi.StringPtrInput
}

func (BranchState) ElementType added in v1.2.0

func (BranchState) ElementType() reflect.Type

type GetActionsPublicKeyArgs

type GetActionsPublicKeyArgs struct {
	// Name of the repository to get public key from.
	Repository string `pulumi:"repository"`
}

A collection of arguments for invoking getActionsPublicKey.

type GetActionsPublicKeyResult

type GetActionsPublicKeyResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Actual key retrieved.
	Key string `pulumi:"key"`
	// ID of the key that has been retrieved.
	KeyId      string `pulumi:"keyId"`
	Repository string `pulumi:"repository"`
}

A collection of values returned by getActionsPublicKey.

func GetActionsPublicKey

func GetActionsPublicKey(ctx *pulumi.Context, args *GetActionsPublicKeyArgs, opts ...pulumi.InvokeOption) (*GetActionsPublicKeyResult, error)

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

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.GetActionsPublicKey(ctx, &github.GetActionsPublicKeyArgs{
			Repository: "example_repo",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetCollaboratorsArgs

type GetCollaboratorsArgs struct {
	// Filter collaborators returned by their affiliation. Can be one of: `outside`, `direct`, `all`.  Defaults to `all`.
	Affiliation *string `pulumi:"affiliation"`
	// The organization that owns the repository.
	Owner string `pulumi:"owner"`
	// The name of the repository.
	Repository string `pulumi:"repository"`
}

A collection of arguments for invoking getCollaborators.

type GetCollaboratorsCollaborator

type GetCollaboratorsCollaborator struct {
	// The GitHub API URL for the collaborator's events.
	EventsUrl string `pulumi:"eventsUrl"`
	// The GitHub API URL for the collaborator's followers.
	FollowersUrl string `pulumi:"followersUrl"`
	// The GitHub API URL for those following the collaborator.
	FollowingUrl string `pulumi:"followingUrl"`
	// The GitHub API URL for the collaborator's gists.
	GistsUrl string `pulumi:"gistsUrl"`
	// The GitHub HTML URL for the collaborator.
	HtmlUrl string `pulumi:"htmlUrl"`
	// The ID of the collaborator.
	Id int `pulumi:"id"`
	// The collaborator's login.
	Login string `pulumi:"login"`
	// The GitHub API URL for the collaborator's organizations.
	OrganizationsUrl string `pulumi:"organizationsUrl"`
	// The permission of the collaborator.
	Permission string `pulumi:"permission"`
	// The GitHub API URL for the collaborator's received events.
	ReceivedEventsUrl string `pulumi:"receivedEventsUrl"`
	// The GitHub API URL for the collaborator's repositories.
	ReposUrl string `pulumi:"reposUrl"`
	// Whether the user is a GitHub admin.
	SiteAdmin bool `pulumi:"siteAdmin"`
	// The GitHub API URL for the collaborator's starred repositories.
	StarredUrl string `pulumi:"starredUrl"`
	// The GitHub API URL for the collaborator's subscribed repositories.
	SubscriptionsUrl string `pulumi:"subscriptionsUrl"`
	// The type of the collaborator (ex. `user`).
	Type string `pulumi:"type"`
	// The GitHub API URL for the collaborator.
	Url string `pulumi:"url"`
}

type GetCollaboratorsCollaboratorArgs

type GetCollaboratorsCollaboratorArgs struct {
	// The GitHub API URL for the collaborator's events.
	EventsUrl pulumi.StringInput `pulumi:"eventsUrl"`
	// The GitHub API URL for the collaborator's followers.
	FollowersUrl pulumi.StringInput `pulumi:"followersUrl"`
	// The GitHub API URL for those following the collaborator.
	FollowingUrl pulumi.StringInput `pulumi:"followingUrl"`
	// The GitHub API URL for the collaborator's gists.
	GistsUrl pulumi.StringInput `pulumi:"gistsUrl"`
	// The GitHub HTML URL for the collaborator.
	HtmlUrl pulumi.StringInput `pulumi:"htmlUrl"`
	// The ID of the collaborator.
	Id pulumi.IntInput `pulumi:"id"`
	// The collaborator's login.
	Login pulumi.StringInput `pulumi:"login"`
	// The GitHub API URL for the collaborator's organizations.
	OrganizationsUrl pulumi.StringInput `pulumi:"organizationsUrl"`
	// The permission of the collaborator.
	Permission pulumi.StringInput `pulumi:"permission"`
	// The GitHub API URL for the collaborator's received events.
	ReceivedEventsUrl pulumi.StringInput `pulumi:"receivedEventsUrl"`
	// The GitHub API URL for the collaborator's repositories.
	ReposUrl pulumi.StringInput `pulumi:"reposUrl"`
	// Whether the user is a GitHub admin.
	SiteAdmin pulumi.BoolInput `pulumi:"siteAdmin"`
	// The GitHub API URL for the collaborator's starred repositories.
	StarredUrl pulumi.StringInput `pulumi:"starredUrl"`
	// The GitHub API URL for the collaborator's subscribed repositories.
	SubscriptionsUrl pulumi.StringInput `pulumi:"subscriptionsUrl"`
	// The type of the collaborator (ex. `user`).
	Type pulumi.StringInput `pulumi:"type"`
	// The GitHub API URL for the collaborator.
	Url pulumi.StringInput `pulumi:"url"`
}

func (GetCollaboratorsCollaboratorArgs) ElementType

func (GetCollaboratorsCollaboratorArgs) ToGetCollaboratorsCollaboratorOutput

func (i GetCollaboratorsCollaboratorArgs) ToGetCollaboratorsCollaboratorOutput() GetCollaboratorsCollaboratorOutput

func (GetCollaboratorsCollaboratorArgs) ToGetCollaboratorsCollaboratorOutputWithContext

func (i GetCollaboratorsCollaboratorArgs) ToGetCollaboratorsCollaboratorOutputWithContext(ctx context.Context) GetCollaboratorsCollaboratorOutput

type GetCollaboratorsCollaboratorArray

type GetCollaboratorsCollaboratorArray []GetCollaboratorsCollaboratorInput

func (GetCollaboratorsCollaboratorArray) ElementType

func (GetCollaboratorsCollaboratorArray) ToGetCollaboratorsCollaboratorArrayOutput

func (i GetCollaboratorsCollaboratorArray) ToGetCollaboratorsCollaboratorArrayOutput() GetCollaboratorsCollaboratorArrayOutput

func (GetCollaboratorsCollaboratorArray) ToGetCollaboratorsCollaboratorArrayOutputWithContext

func (i GetCollaboratorsCollaboratorArray) ToGetCollaboratorsCollaboratorArrayOutputWithContext(ctx context.Context) GetCollaboratorsCollaboratorArrayOutput

type GetCollaboratorsCollaboratorArrayInput

type GetCollaboratorsCollaboratorArrayInput interface {
	pulumi.Input

	ToGetCollaboratorsCollaboratorArrayOutput() GetCollaboratorsCollaboratorArrayOutput
	ToGetCollaboratorsCollaboratorArrayOutputWithContext(context.Context) GetCollaboratorsCollaboratorArrayOutput
}

GetCollaboratorsCollaboratorArrayInput is an input type that accepts GetCollaboratorsCollaboratorArray and GetCollaboratorsCollaboratorArrayOutput values. You can construct a concrete instance of `GetCollaboratorsCollaboratorArrayInput` via:

GetCollaboratorsCollaboratorArray{ GetCollaboratorsCollaboratorArgs{...} }

type GetCollaboratorsCollaboratorArrayOutput

type GetCollaboratorsCollaboratorArrayOutput struct{ *pulumi.OutputState }

func (GetCollaboratorsCollaboratorArrayOutput) ElementType

func (GetCollaboratorsCollaboratorArrayOutput) Index

func (GetCollaboratorsCollaboratorArrayOutput) ToGetCollaboratorsCollaboratorArrayOutput

func (o GetCollaboratorsCollaboratorArrayOutput) ToGetCollaboratorsCollaboratorArrayOutput() GetCollaboratorsCollaboratorArrayOutput

func (GetCollaboratorsCollaboratorArrayOutput) ToGetCollaboratorsCollaboratorArrayOutputWithContext

func (o GetCollaboratorsCollaboratorArrayOutput) ToGetCollaboratorsCollaboratorArrayOutputWithContext(ctx context.Context) GetCollaboratorsCollaboratorArrayOutput

type GetCollaboratorsCollaboratorInput

type GetCollaboratorsCollaboratorInput interface {
	pulumi.Input

	ToGetCollaboratorsCollaboratorOutput() GetCollaboratorsCollaboratorOutput
	ToGetCollaboratorsCollaboratorOutputWithContext(context.Context) GetCollaboratorsCollaboratorOutput
}

GetCollaboratorsCollaboratorInput is an input type that accepts GetCollaboratorsCollaboratorArgs and GetCollaboratorsCollaboratorOutput values. You can construct a concrete instance of `GetCollaboratorsCollaboratorInput` via:

GetCollaboratorsCollaboratorArgs{...}

type GetCollaboratorsCollaboratorOutput

type GetCollaboratorsCollaboratorOutput struct{ *pulumi.OutputState }

func (GetCollaboratorsCollaboratorOutput) ElementType

func (GetCollaboratorsCollaboratorOutput) EventsUrl

The GitHub API URL for the collaborator's events.

func (GetCollaboratorsCollaboratorOutput) FollowersUrl

The GitHub API URL for the collaborator's followers.

func (GetCollaboratorsCollaboratorOutput) FollowingUrl

The GitHub API URL for those following the collaborator.

func (GetCollaboratorsCollaboratorOutput) GistsUrl

The GitHub API URL for the collaborator's gists.

func (GetCollaboratorsCollaboratorOutput) HtmlUrl

The GitHub HTML URL for the collaborator.

func (GetCollaboratorsCollaboratorOutput) Id

The ID of the collaborator.

func (GetCollaboratorsCollaboratorOutput) Login

The collaborator's login.

func (GetCollaboratorsCollaboratorOutput) OrganizationsUrl

The GitHub API URL for the collaborator's organizations.

func (GetCollaboratorsCollaboratorOutput) Permission

The permission of the collaborator.

func (GetCollaboratorsCollaboratorOutput) ReceivedEventsUrl

The GitHub API URL for the collaborator's received events.

func (GetCollaboratorsCollaboratorOutput) ReposUrl

The GitHub API URL for the collaborator's repositories.

func (GetCollaboratorsCollaboratorOutput) SiteAdmin

Whether the user is a GitHub admin.

func (GetCollaboratorsCollaboratorOutput) StarredUrl

The GitHub API URL for the collaborator's starred repositories.

func (GetCollaboratorsCollaboratorOutput) SubscriptionsUrl

The GitHub API URL for the collaborator's subscribed repositories.

func (GetCollaboratorsCollaboratorOutput) ToGetCollaboratorsCollaboratorOutput

func (o GetCollaboratorsCollaboratorOutput) ToGetCollaboratorsCollaboratorOutput() GetCollaboratorsCollaboratorOutput

func (GetCollaboratorsCollaboratorOutput) ToGetCollaboratorsCollaboratorOutputWithContext

func (o GetCollaboratorsCollaboratorOutput) ToGetCollaboratorsCollaboratorOutputWithContext(ctx context.Context) GetCollaboratorsCollaboratorOutput

func (GetCollaboratorsCollaboratorOutput) Type

The type of the collaborator (ex. `user`).

func (GetCollaboratorsCollaboratorOutput) Url

The GitHub API URL for the collaborator.

type GetCollaboratorsResult

type GetCollaboratorsResult struct {
	Affiliation *string `pulumi:"affiliation"`
	// An Array of GitHub collaborators.  Each `collaborator` block consists of the fields documented below.
	Collaborators []GetCollaboratorsCollaborator `pulumi:"collaborators"`
	// The provider-assigned unique ID for this managed resource.
	Id         string `pulumi:"id"`
	Owner      string `pulumi:"owner"`
	Repository string `pulumi:"repository"`
}

A collection of values returned by getCollaborators.

func GetCollaborators

func GetCollaborators(ctx *pulumi.Context, args *GetCollaboratorsArgs, opts ...pulumi.InvokeOption) (*GetCollaboratorsResult, error)

Use this data source to retrieve the collaborators for a given repository.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.GetCollaborators(ctx, &github.GetCollaboratorsArgs{
			Owner:      "example_owner",
			Repository: "example_repository",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetIpRangesResult

type GetIpRangesResult struct {
	// An Array of IP addresses in CIDR format specifying the Git servers.
	Gits []string `pulumi:"gits"`
	// An Array of IP addresses in CIDR format specifying the addresses that incoming service hooks will originate from.
	Hooks []string `pulumi:"hooks"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// An Array of IP addresses in CIDR format specifying the A records for GitHub Importer.
	Importers []string `pulumi:"importers"`
	// An Array of IP addresses in CIDR format specifying the A records for GitHub Pages.
	Pages []string `pulumi:"pages"`
}

A collection of values returned by getIpRanges.

func GetIpRanges

func GetIpRanges(ctx *pulumi.Context, opts ...pulumi.InvokeOption) (*GetIpRangesResult, error)

Use this data source to retrieve information about GitHub's IP addresses.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.GetIpRanges(ctx, nil, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetOrganizationTeamSyncGroupsGroup added in v1.3.0

type GetOrganizationTeamSyncGroupsGroup struct {
	// The description of the IdP group.
	GroupDescription string `pulumi:"groupDescription"`
	// The ID of the IdP group.
	GroupId string `pulumi:"groupId"`
	// The name of the IdP group.
	GroupName string `pulumi:"groupName"`
}

type GetOrganizationTeamSyncGroupsGroupArgs added in v1.3.0

type GetOrganizationTeamSyncGroupsGroupArgs struct {
	// The description of the IdP group.
	GroupDescription pulumi.StringInput `pulumi:"groupDescription"`
	// The ID of the IdP group.
	GroupId pulumi.StringInput `pulumi:"groupId"`
	// The name of the IdP group.
	GroupName pulumi.StringInput `pulumi:"groupName"`
}

func (GetOrganizationTeamSyncGroupsGroupArgs) ElementType added in v1.3.0

func (GetOrganizationTeamSyncGroupsGroupArgs) ToGetOrganizationTeamSyncGroupsGroupOutput added in v1.3.0

func (i GetOrganizationTeamSyncGroupsGroupArgs) ToGetOrganizationTeamSyncGroupsGroupOutput() GetOrganizationTeamSyncGroupsGroupOutput

func (GetOrganizationTeamSyncGroupsGroupArgs) ToGetOrganizationTeamSyncGroupsGroupOutputWithContext added in v1.3.0

func (i GetOrganizationTeamSyncGroupsGroupArgs) ToGetOrganizationTeamSyncGroupsGroupOutputWithContext(ctx context.Context) GetOrganizationTeamSyncGroupsGroupOutput

type GetOrganizationTeamSyncGroupsGroupArray added in v1.3.0

type GetOrganizationTeamSyncGroupsGroupArray []GetOrganizationTeamSyncGroupsGroupInput

func (GetOrganizationTeamSyncGroupsGroupArray) ElementType added in v1.3.0

func (GetOrganizationTeamSyncGroupsGroupArray) ToGetOrganizationTeamSyncGroupsGroupArrayOutput added in v1.3.0

func (i GetOrganizationTeamSyncGroupsGroupArray) ToGetOrganizationTeamSyncGroupsGroupArrayOutput() GetOrganizationTeamSyncGroupsGroupArrayOutput

func (GetOrganizationTeamSyncGroupsGroupArray) ToGetOrganizationTeamSyncGroupsGroupArrayOutputWithContext added in v1.3.0

func (i GetOrganizationTeamSyncGroupsGroupArray) ToGetOrganizationTeamSyncGroupsGroupArrayOutputWithContext(ctx context.Context) GetOrganizationTeamSyncGroupsGroupArrayOutput

type GetOrganizationTeamSyncGroupsGroupArrayInput added in v1.3.0

type GetOrganizationTeamSyncGroupsGroupArrayInput interface {
	pulumi.Input

	ToGetOrganizationTeamSyncGroupsGroupArrayOutput() GetOrganizationTeamSyncGroupsGroupArrayOutput
	ToGetOrganizationTeamSyncGroupsGroupArrayOutputWithContext(context.Context) GetOrganizationTeamSyncGroupsGroupArrayOutput
}

GetOrganizationTeamSyncGroupsGroupArrayInput is an input type that accepts GetOrganizationTeamSyncGroupsGroupArray and GetOrganizationTeamSyncGroupsGroupArrayOutput values. You can construct a concrete instance of `GetOrganizationTeamSyncGroupsGroupArrayInput` via:

GetOrganizationTeamSyncGroupsGroupArray{ GetOrganizationTeamSyncGroupsGroupArgs{...} }

type GetOrganizationTeamSyncGroupsGroupArrayOutput added in v1.3.0

type GetOrganizationTeamSyncGroupsGroupArrayOutput struct{ *pulumi.OutputState }

func (GetOrganizationTeamSyncGroupsGroupArrayOutput) ElementType added in v1.3.0

func (GetOrganizationTeamSyncGroupsGroupArrayOutput) Index added in v1.3.0

func (GetOrganizationTeamSyncGroupsGroupArrayOutput) ToGetOrganizationTeamSyncGroupsGroupArrayOutput added in v1.3.0

func (o GetOrganizationTeamSyncGroupsGroupArrayOutput) ToGetOrganizationTeamSyncGroupsGroupArrayOutput() GetOrganizationTeamSyncGroupsGroupArrayOutput

func (GetOrganizationTeamSyncGroupsGroupArrayOutput) ToGetOrganizationTeamSyncGroupsGroupArrayOutputWithContext added in v1.3.0

func (o GetOrganizationTeamSyncGroupsGroupArrayOutput) ToGetOrganizationTeamSyncGroupsGroupArrayOutputWithContext(ctx context.Context) GetOrganizationTeamSyncGroupsGroupArrayOutput

type GetOrganizationTeamSyncGroupsGroupInput added in v1.3.0

type GetOrganizationTeamSyncGroupsGroupInput interface {
	pulumi.Input

	ToGetOrganizationTeamSyncGroupsGroupOutput() GetOrganizationTeamSyncGroupsGroupOutput
	ToGetOrganizationTeamSyncGroupsGroupOutputWithContext(context.Context) GetOrganizationTeamSyncGroupsGroupOutput
}

GetOrganizationTeamSyncGroupsGroupInput is an input type that accepts GetOrganizationTeamSyncGroupsGroupArgs and GetOrganizationTeamSyncGroupsGroupOutput values. You can construct a concrete instance of `GetOrganizationTeamSyncGroupsGroupInput` via:

GetOrganizationTeamSyncGroupsGroupArgs{...}

type GetOrganizationTeamSyncGroupsGroupOutput added in v1.3.0

type GetOrganizationTeamSyncGroupsGroupOutput struct{ *pulumi.OutputState }

func (GetOrganizationTeamSyncGroupsGroupOutput) ElementType added in v1.3.0

func (GetOrganizationTeamSyncGroupsGroupOutput) GroupDescription added in v1.3.0

The description of the IdP group.

func (GetOrganizationTeamSyncGroupsGroupOutput) GroupId added in v1.3.0

The ID of the IdP group.

func (GetOrganizationTeamSyncGroupsGroupOutput) GroupName added in v1.3.0

The name of the IdP group.

func (GetOrganizationTeamSyncGroupsGroupOutput) ToGetOrganizationTeamSyncGroupsGroupOutput added in v1.3.0

func (o GetOrganizationTeamSyncGroupsGroupOutput) ToGetOrganizationTeamSyncGroupsGroupOutput() GetOrganizationTeamSyncGroupsGroupOutput

func (GetOrganizationTeamSyncGroupsGroupOutput) ToGetOrganizationTeamSyncGroupsGroupOutputWithContext added in v1.3.0

func (o GetOrganizationTeamSyncGroupsGroupOutput) ToGetOrganizationTeamSyncGroupsGroupOutputWithContext(ctx context.Context) GetOrganizationTeamSyncGroupsGroupOutput

type GetOrganizationTeamSyncGroupsResult added in v1.3.0

type GetOrganizationTeamSyncGroupsResult struct {
	// An Array of GitHub Identity Provider Groups.  Each `group` block consists of the fields documented below.
	Groups []GetOrganizationTeamSyncGroupsGroup `pulumi:"groups"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
}

A collection of values returned by getOrganizationTeamSyncGroups.

func GetOrganizationTeamSyncGroups added in v1.3.0

func GetOrganizationTeamSyncGroups(ctx *pulumi.Context, opts ...pulumi.InvokeOption) (*GetOrganizationTeamSyncGroupsResult, error)

Use this data source to retrieve the identity provider (IdP) groups for an organization.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.GetOrganizationTeamSyncGroups(ctx, nil, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetReleaseArgs

type GetReleaseArgs struct {
	// Owner of the repository.
	Owner string `pulumi:"owner"`
	// ID of the release to retrieve. Must be specified when `retrieveBy` = `id`.
	ReleaseId *int `pulumi:"releaseId"`
	// Tag of the release to retrieve. Must be specified when `retrieveBy` = `tag`.
	ReleaseTag *string `pulumi:"releaseTag"`
	// Name of the repository to retrieve the release from.
	Repository string `pulumi:"repository"`
	// Describes how to fetch the release. Valid values are `id`, `tag`, `latest`.
	RetrieveBy string `pulumi:"retrieveBy"`
}

A collection of arguments for invoking getRelease.

type GetReleaseResult

type GetReleaseResult struct {
	// URL of any associated assets with the release
	AssertsUrl string `pulumi:"assertsUrl"`
	// Contents of the description (body) of a release
	Body string `pulumi:"body"`
	// Date of release creation
	CreatedAt string `pulumi:"createdAt"`
	// (`Boolean`) indicates whether the release is a draft
	Draft bool `pulumi:"draft"`
	// URL directing to detailed information on the release
	HtmlUrl string `pulumi:"htmlUrl"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Name of release
	Name  string `pulumi:"name"`
	Owner string `pulumi:"owner"`
	// (`Boolean`) indicates whether the release is a prerelease
	Prerelease bool `pulumi:"prerelease"`
	// Date of release publishing
	PublishedAt string `pulumi:"publishedAt"`
	// ID of release
	ReleaseId *int `pulumi:"releaseId"`
	// Tag of release
	ReleaseTag *string `pulumi:"releaseTag"`
	Repository string  `pulumi:"repository"`
	RetrieveBy string  `pulumi:"retrieveBy"`
	// Download URL of a specific release in `tar.gz` format
	TarballUrl string `pulumi:"tarballUrl"`
	// Commitish value that determines where the Git release is created from
	TargetCommitish string `pulumi:"targetCommitish"`
	// URL that can be used to upload Assets to the release
	UploadUrl string `pulumi:"uploadUrl"`
	// Base URL of the release
	Url string `pulumi:"url"`
	// Download URL of a specific release in `zip` format
	ZipballUrl string `pulumi:"zipballUrl"`
}

A collection of values returned by getRelease.

func GetRelease

func GetRelease(ctx *pulumi.Context, args *GetReleaseArgs, opts ...pulumi.InvokeOption) (*GetReleaseResult, error)

Use this data source to retrieve information about a GitHub release in a specific repository.

## Example Usage

To retrieve the latest release that is present in a repository:

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.GetRelease(ctx, &github.GetReleaseArgs{
			Owner:      "example-owner",
			Repository: "example-repository",
			RetrieveBy: "latest",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

To retrieve a specific release from a repository based on it's ID:

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.GetRelease(ctx, &github.GetReleaseArgs{
			Id:         12345,
			Owner:      "example-owner",
			Repository: "example-repository",
			RetrieveBy: "id",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

Finally, to retrieve a release based on it's tag:

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "v1.0.0"
		_, err := github.GetRelease(ctx, &github.GetReleaseArgs{
			Owner:      "example-owner",
			ReleaseTag: &opt0,
			Repository: "example-repository",
			RetrieveBy: "tag",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetRepositoriesArgs

type GetRepositoriesArgs struct {
	// Search query. See [documentation for the search syntax](https://help.github.com/articles/understanding-the-search-syntax/).
	Query string `pulumi:"query"`
	// Sorts the repositories returned by the specified attribute. Valid values include `stars`, `fork`, and `updated`. Defaults to `updated`.
	Sort *string `pulumi:"sort"`
}

A collection of arguments for invoking getRepositories.

type GetRepositoriesResult

type GetRepositoriesResult struct {
	FullNames []string `pulumi:"fullNames"`
	// The provider-assigned unique ID for this managed resource.
	Id    string   `pulumi:"id"`
	Names []string `pulumi:"names"`
	Query string   `pulumi:"query"`
	Sort  *string  `pulumi:"sort"`
}

A collection of values returned by getRepositories.

func GetRepositories

func GetRepositories(ctx *pulumi.Context, args *GetRepositoriesArgs, opts ...pulumi.InvokeOption) (*GetRepositoriesResult, error)

> **Note:** The data source will return a maximum of `1000` repositories

[as documented in official API docs](https://developer.github.com/v3/search/#about-the-search-api).

Use this data source to retrieve a list of GitHub repositories using a search query.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.GetRepositories(ctx, &github.GetRepositoriesArgs{
			Query: "org:hashicorp language:Go",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetUserArgs

type GetUserArgs struct {
	// The username.
	Username string `pulumi:"username"`
}

A collection of arguments for invoking getUser.

type GetUserResult

type GetUserResult struct {
	// the user's avatar URL.
	AvatarUrl string `pulumi:"avatarUrl"`
	// the user's bio.
	Bio string `pulumi:"bio"`
	// the user's blog location.
	Blog string `pulumi:"blog"`
	// the user's company name.
	Company string `pulumi:"company"`
	// the creation date.
	CreatedAt string `pulumi:"createdAt"`
	// the user's email.
	Email string `pulumi:"email"`
	// the number of followers.
	Followers int `pulumi:"followers"`
	// the number of following users.
	Following int `pulumi:"following"`
	// list of user's GPG keys.
	GpgKeys []string `pulumi:"gpgKeys"`
	// the user's gravatar ID.
	GravatarId string `pulumi:"gravatarId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// the user's location.
	Location string `pulumi:"location"`
	// the user's login.
	Login string `pulumi:"login"`
	// the user's full name.
	Name   string `pulumi:"name"`
	NodeId string `pulumi:"nodeId"`
	// the number of public gists.
	PublicGists int `pulumi:"publicGists"`
	// the number of public repositories.
	PublicRepos int `pulumi:"publicRepos"`
	// whether the user is a GitHub admin.
	SiteAdmin bool `pulumi:"siteAdmin"`
	// list of user's SSH keys.
	SshKeys []string `pulumi:"sshKeys"`
	// the update date.
	UpdatedAt string `pulumi:"updatedAt"`
	Username  string `pulumi:"username"`
}

A collection of values returned by getUser.

func GetUser

func GetUser(ctx *pulumi.Context, args *GetUserArgs, opts ...pulumi.InvokeOption) (*GetUserResult, error)

Use this data source to retrieve information about a GitHub user.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.GetUser(ctx, &github.GetUserArgs{
			Username: "example",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type IssueLabel

type IssueLabel struct {
	pulumi.CustomResourceState

	// A 6 character hex code, **without the leading #**, identifying the color of the label.
	Color pulumi.StringOutput `pulumi:"color"`
	// A short description of the label.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	Etag        pulumi.StringOutput    `pulumi:"etag"`
	// The name of the label.
	Name pulumi.StringOutput `pulumi:"name"`
	// The GitHub repository
	Repository pulumi.StringOutput `pulumi:"repository"`
	// The URL to the issue label
	Url pulumi.StringOutput `pulumi:"url"`
}

func GetIssueLabel

func GetIssueLabel(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *IssueLabelState, opts ...pulumi.ResourceOption) (*IssueLabel, error)

GetIssueLabel gets an existing IssueLabel resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewIssueLabel

func NewIssueLabel(ctx *pulumi.Context,
	name string, args *IssueLabelArgs, opts ...pulumi.ResourceOption) (*IssueLabel, error)

NewIssueLabel registers a new resource with the given unique name, arguments, and options.

type IssueLabelArgs

type IssueLabelArgs struct {
	// A 6 character hex code, **without the leading #**, identifying the color of the label.
	Color pulumi.StringInput
	// A short description of the label.
	Description pulumi.StringPtrInput
	// The name of the label.
	Name pulumi.StringPtrInput
	// The GitHub repository
	Repository pulumi.StringInput
}

The set of arguments for constructing a IssueLabel resource.

func (IssueLabelArgs) ElementType

func (IssueLabelArgs) ElementType() reflect.Type

type IssueLabelState

type IssueLabelState struct {
	// A 6 character hex code, **without the leading #**, identifying the color of the label.
	Color pulumi.StringPtrInput
	// A short description of the label.
	Description pulumi.StringPtrInput
	Etag        pulumi.StringPtrInput
	// The name of the label.
	Name pulumi.StringPtrInput
	// The GitHub repository
	Repository pulumi.StringPtrInput
	// The URL to the issue label
	Url pulumi.StringPtrInput
}

func (IssueLabelState) ElementType

func (IssueLabelState) ElementType() reflect.Type

type LookupBranchArgs added in v1.2.0

type LookupBranchArgs struct {
	// The repository branch to create.
	Branch string `pulumi:"branch"`
	// The GitHub repository name.
	Repository string `pulumi:"repository"`
}

A collection of arguments for invoking getBranch.

type LookupBranchResult added in v1.2.0

type LookupBranchResult struct {
	Branch string `pulumi:"branch"`
	// An etag representing the Branch object.
	Etag string `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A string representing a branch reference, in the form of `refs/heads/<branch>`.
	Ref        string `pulumi:"ref"`
	Repository string `pulumi:"repository"`
	// A string storing the reference's `HEAD` commit's SHA1.
	Sha string `pulumi:"sha"`
}

A collection of values returned by getBranch.

func LookupBranch added in v1.2.0

func LookupBranch(ctx *pulumi.Context, args *LookupBranchArgs, opts ...pulumi.InvokeOption) (*LookupBranchResult, error)

Use this data source to retrieve information about a repository branch.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.LookupBranch(ctx, &github.LookupBranchArgs{
			Branch:     "development",
			Repository: "example",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupMembershipArgs

type LookupMembershipArgs struct {
	// The username to lookup in the organization.
	Username string `pulumi:"username"`
}

A collection of arguments for invoking getMembership.

type LookupMembershipResult

type LookupMembershipResult struct {
	// An etag representing the membership object.
	Etag string `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// `admin` or `member` -- the role the user has within the organization.
	Role string `pulumi:"role"`
	// The username.
	Username string `pulumi:"username"`
}

A collection of values returned by getMembership.

func LookupMembership

func LookupMembership(ctx *pulumi.Context, args *LookupMembershipArgs, opts ...pulumi.InvokeOption) (*LookupMembershipResult, error)

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

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.LookupMembership(ctx, &github.LookupMembershipArgs{
			Username: "SomeUser",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupRepositoryArgs

type LookupRepositoryArgs struct {
	// Full name of the repository (in `org/name` format).
	FullName *string `pulumi:"fullName"`
	// The name of the repository.
	Name *string `pulumi:"name"`
}

A collection of arguments for invoking getRepository.

type LookupRepositoryResult

type LookupRepositoryResult struct {
	// Whether the repository allows merge commits.
	AllowMergeCommit bool `pulumi:"allowMergeCommit"`
	// Whether the repository allows rebase merges.
	AllowRebaseMerge bool `pulumi:"allowRebaseMerge"`
	// Whether the repository allows squash merges.
	AllowSquashMerge bool `pulumi:"allowSquashMerge"`
	// Whether the repository is archived.
	Archived bool `pulumi:"archived"`
	// The name of the default branch of the repository.
	DefaultBranch string `pulumi:"defaultBranch"`
	// A description of the repository.
	Description string  `pulumi:"description"`
	FullName    *string `pulumi:"fullName"`
	// URL that can be provided to `git clone` to clone the repository anonymously via the git protocol.
	GitCloneUrl string `pulumi:"gitCloneUrl"`
	// Whether the repository has Downloads feature enabled.
	HasDownloads bool `pulumi:"hasDownloads"`
	// Whether the repository has GitHub Issues enabled.
	HasIssues bool `pulumi:"hasIssues"`
	// Whether the repository has the GitHub Projects enabled.
	HasProjects bool `pulumi:"hasProjects"`
	// Whether the repository has the GitHub Wiki enabled.
	HasWiki bool `pulumi:"hasWiki"`
	// URL of a page describing the project.
	HomepageUrl string `pulumi:"homepageUrl"`
	// URL to the repository on the web.
	HtmlUrl string `pulumi:"htmlUrl"`
	// URL that can be provided to `git clone` to clone the repository via HTTPS.
	HttpCloneUrl string `pulumi:"httpCloneUrl"`
	// The provider-assigned unique ID for this managed resource.
	Id     string  `pulumi:"id"`
	Name   *string `pulumi:"name"`
	NodeId string  `pulumi:"nodeId"`
	// Whether the repository is private.
	Private bool `pulumi:"private"`
	// URL that can be provided to `git clone` to clone the repository via SSH.
	SshCloneUrl string `pulumi:"sshCloneUrl"`
	// URL that can be provided to `svn checkout` to check out the repository via GitHub's Subversion protocol emulation.
	SvnUrl string `pulumi:"svnUrl"`
	// The list of topics of the repository.
	Topics []string `pulumi:"topics"`
}

A collection of values returned by getRepository.

func LookupRepository

func LookupRepository(ctx *pulumi.Context, args *LookupRepositoryArgs, opts ...pulumi.InvokeOption) (*LookupRepositoryResult, error)

Use this data source to retrieve information about a GitHub repository.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "hashicorp/terraform"
		_, err := github.LookupRepository(ctx, &github.LookupRepositoryArgs{
			FullName: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupTeamArgs

type LookupTeamArgs struct {
	// The team slug.
	Slug string `pulumi:"slug"`
}

A collection of arguments for invoking getTeam.

type LookupTeamResult

type LookupTeamResult struct {
	// the team's description.
	Description string `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// List of team members
	Members []string `pulumi:"members"`
	// the team's full name.
	Name   string `pulumi:"name"`
	NodeId string `pulumi:"nodeId"`
	// the team's permission level.
	Permission string `pulumi:"permission"`
	// the team's privacy type.
	Privacy string `pulumi:"privacy"`
	Slug    string `pulumi:"slug"`
}

A collection of values returned by getTeam.

func LookupTeam

func LookupTeam(ctx *pulumi.Context, args *LookupTeamArgs, opts ...pulumi.InvokeOption) (*LookupTeamResult, error)

Use this data source to retrieve information about a GitHub team.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.LookupTeam(ctx, &github.LookupTeamArgs{
			Slug: "example",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type Membership

type Membership struct {
	pulumi.CustomResourceState

	Etag pulumi.StringOutput `pulumi:"etag"`
	// The role of the user within the organization.
	// Must be one of `member` or `admin`. Defaults to `member`.
	Role pulumi.StringPtrOutput `pulumi:"role"`
	// The user to add to the organization.
	Username pulumi.StringOutput `pulumi:"username"`
}

Provides 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

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.NewMembership(ctx, "membershipForSomeUser", &github.MembershipArgs{
			Role:     pulumi.String("member"),
			Username: pulumi.String("SomeUser"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetMembership

func GetMembership(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MembershipState, opts ...pulumi.ResourceOption) (*Membership, error)

GetMembership gets an existing Membership resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewMembership

func NewMembership(ctx *pulumi.Context,
	name string, args *MembershipArgs, opts ...pulumi.ResourceOption) (*Membership, error)

NewMembership registers a new resource with the given unique name, arguments, and options.

type MembershipArgs

type MembershipArgs struct {
	// The role of the user within the organization.
	// Must be one of `member` or `admin`. Defaults to `member`.
	Role pulumi.StringPtrInput
	// The user to add to the organization.
	Username pulumi.StringInput
}

The set of arguments for constructing a Membership resource.

func (MembershipArgs) ElementType

func (MembershipArgs) ElementType() reflect.Type

type MembershipState

type MembershipState struct {
	Etag pulumi.StringPtrInput
	// The role of the user within the organization.
	// Must be one of `member` or `admin`. Defaults to `member`.
	Role pulumi.StringPtrInput
	// The user to add to the organization.
	Username pulumi.StringPtrInput
}

func (MembershipState) ElementType

func (MembershipState) ElementType() reflect.Type

type OrganizationBlock

type OrganizationBlock struct {
	pulumi.CustomResourceState

	Etag pulumi.StringOutput `pulumi:"etag"`
	// The name of the user to block.
	Username pulumi.StringOutput `pulumi:"username"`
}

This resource allows you to create and manage blocks for GitHub organizations.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.NewOrganizationBlock(ctx, "example", &github.OrganizationBlockArgs{
			Username: pulumi.String("paultyng"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetOrganizationBlock

func GetOrganizationBlock(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *OrganizationBlockState, opts ...pulumi.ResourceOption) (*OrganizationBlock, error)

GetOrganizationBlock gets an existing OrganizationBlock resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewOrganizationBlock

func NewOrganizationBlock(ctx *pulumi.Context,
	name string, args *OrganizationBlockArgs, opts ...pulumi.ResourceOption) (*OrganizationBlock, error)

NewOrganizationBlock registers a new resource with the given unique name, arguments, and options.

type OrganizationBlockArgs

type OrganizationBlockArgs struct {
	// The name of the user to block.
	Username pulumi.StringInput
}

The set of arguments for constructing a OrganizationBlock resource.

func (OrganizationBlockArgs) ElementType

func (OrganizationBlockArgs) ElementType() reflect.Type

type OrganizationBlockState

type OrganizationBlockState struct {
	Etag pulumi.StringPtrInput
	// The name of the user to block.
	Username pulumi.StringPtrInput
}

func (OrganizationBlockState) ElementType

func (OrganizationBlockState) ElementType() reflect.Type

type OrganizationProject

type OrganizationProject struct {
	pulumi.CustomResourceState

	// The body of the project.
	Body pulumi.StringPtrOutput `pulumi:"body"`
	Etag pulumi.StringOutput    `pulumi:"etag"`
	// The name of the project.
	Name pulumi.StringOutput `pulumi:"name"`
	// URL of the project
	Url pulumi.StringOutput `pulumi:"url"`
}

This resource allows you to create and manage projects for GitHub organization.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.NewOrganizationProject(ctx, "project", &github.OrganizationProjectArgs{
			Body: pulumi.String("This is a organization project."),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetOrganizationProject

func GetOrganizationProject(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *OrganizationProjectState, opts ...pulumi.ResourceOption) (*OrganizationProject, error)

GetOrganizationProject gets an existing OrganizationProject resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewOrganizationProject

func NewOrganizationProject(ctx *pulumi.Context,
	name string, args *OrganizationProjectArgs, opts ...pulumi.ResourceOption) (*OrganizationProject, error)

NewOrganizationProject registers a new resource with the given unique name, arguments, and options.

type OrganizationProjectArgs

type OrganizationProjectArgs struct {
	// The body of the project.
	Body pulumi.StringPtrInput
	// The name of the project.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a OrganizationProject resource.

func (OrganizationProjectArgs) ElementType

func (OrganizationProjectArgs) ElementType() reflect.Type

type OrganizationProjectState

type OrganizationProjectState struct {
	// The body of the project.
	Body pulumi.StringPtrInput
	Etag pulumi.StringPtrInput
	// The name of the project.
	Name pulumi.StringPtrInput
	// URL of the project
	Url pulumi.StringPtrInput
}

func (OrganizationProjectState) ElementType

func (OrganizationProjectState) ElementType() reflect.Type

type OrganizationWebhook

type OrganizationWebhook struct {
	pulumi.CustomResourceState

	// Indicate of the webhook should receive events. Defaults to `true`.
	Active pulumi.BoolPtrOutput `pulumi:"active"`
	// key/value pair of configuration for this webhook. Available keys are `url`, `contentType`, `secret` and `insecureSsl`.
	Configuration OrganizationWebhookConfigurationPtrOutput `pulumi:"configuration"`
	Etag          pulumi.StringOutput                       `pulumi:"etag"`
	// A list of events which should trigger the webhook. See a list of [available events](https://developer.github.com/v3/activity/events/types/)
	Events pulumi.StringArrayOutput `pulumi:"events"`
	// URL of the webhook
	Url pulumi.StringOutput `pulumi:"url"`
}

This resource allows you to create and manage webhooks for GitHub organization.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.NewOrganizationWebhook(ctx, "foo", &github.OrganizationWebhookArgs{
			Active: pulumi.Bool(false),
			Configuration: &github.OrganizationWebhookConfigurationArgs{
				ContentType: pulumi.String("form"),
				InsecureSsl: pulumi.Bool(false),
				Url:         pulumi.String("https://google.de/"),
			},
			Events: pulumi.StringArray{
				pulumi.String("issues"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetOrganizationWebhook

func GetOrganizationWebhook(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *OrganizationWebhookState, opts ...pulumi.ResourceOption) (*OrganizationWebhook, error)

GetOrganizationWebhook gets an existing OrganizationWebhook resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewOrganizationWebhook

func NewOrganizationWebhook(ctx *pulumi.Context,
	name string, args *OrganizationWebhookArgs, opts ...pulumi.ResourceOption) (*OrganizationWebhook, error)

NewOrganizationWebhook registers a new resource with the given unique name, arguments, and options.

type OrganizationWebhookArgs

type OrganizationWebhookArgs struct {
	// Indicate of the webhook should receive events. Defaults to `true`.
	Active pulumi.BoolPtrInput
	// key/value pair of configuration for this webhook. Available keys are `url`, `contentType`, `secret` and `insecureSsl`.
	Configuration OrganizationWebhookConfigurationPtrInput
	// A list of events which should trigger the webhook. See a list of [available events](https://developer.github.com/v3/activity/events/types/)
	Events pulumi.StringArrayInput
}

The set of arguments for constructing a OrganizationWebhook resource.

func (OrganizationWebhookArgs) ElementType

func (OrganizationWebhookArgs) ElementType() reflect.Type

type OrganizationWebhookConfiguration

type OrganizationWebhookConfiguration struct {
	ContentType *string `pulumi:"contentType"`
	InsecureSsl *bool   `pulumi:"insecureSsl"`
	Secret      *string `pulumi:"secret"`
	// URL of the webhook
	Url string `pulumi:"url"`
}

type OrganizationWebhookConfigurationArgs

type OrganizationWebhookConfigurationArgs struct {
	ContentType pulumi.StringPtrInput `pulumi:"contentType"`
	InsecureSsl pulumi.BoolPtrInput   `pulumi:"insecureSsl"`
	Secret      pulumi.StringPtrInput `pulumi:"secret"`
	// URL of the webhook
	Url pulumi.StringInput `pulumi:"url"`
}

func (OrganizationWebhookConfigurationArgs) ElementType

func (OrganizationWebhookConfigurationArgs) ToOrganizationWebhookConfigurationOutput

func (i OrganizationWebhookConfigurationArgs) ToOrganizationWebhookConfigurationOutput() OrganizationWebhookConfigurationOutput

func (OrganizationWebhookConfigurationArgs) ToOrganizationWebhookConfigurationOutputWithContext

func (i OrganizationWebhookConfigurationArgs) ToOrganizationWebhookConfigurationOutputWithContext(ctx context.Context) OrganizationWebhookConfigurationOutput

func (OrganizationWebhookConfigurationArgs) ToOrganizationWebhookConfigurationPtrOutput

func (i OrganizationWebhookConfigurationArgs) ToOrganizationWebhookConfigurationPtrOutput() OrganizationWebhookConfigurationPtrOutput

func (OrganizationWebhookConfigurationArgs) ToOrganizationWebhookConfigurationPtrOutputWithContext

func (i OrganizationWebhookConfigurationArgs) ToOrganizationWebhookConfigurationPtrOutputWithContext(ctx context.Context) OrganizationWebhookConfigurationPtrOutput

type OrganizationWebhookConfigurationInput

type OrganizationWebhookConfigurationInput interface {
	pulumi.Input

	ToOrganizationWebhookConfigurationOutput() OrganizationWebhookConfigurationOutput
	ToOrganizationWebhookConfigurationOutputWithContext(context.Context) OrganizationWebhookConfigurationOutput
}

OrganizationWebhookConfigurationInput is an input type that accepts OrganizationWebhookConfigurationArgs and OrganizationWebhookConfigurationOutput values. You can construct a concrete instance of `OrganizationWebhookConfigurationInput` via:

OrganizationWebhookConfigurationArgs{...}

type OrganizationWebhookConfigurationOutput

type OrganizationWebhookConfigurationOutput struct{ *pulumi.OutputState }

func (OrganizationWebhookConfigurationOutput) ContentType

func (OrganizationWebhookConfigurationOutput) ElementType

func (OrganizationWebhookConfigurationOutput) InsecureSsl

func (OrganizationWebhookConfigurationOutput) Secret

func (OrganizationWebhookConfigurationOutput) ToOrganizationWebhookConfigurationOutput

func (o OrganizationWebhookConfigurationOutput) ToOrganizationWebhookConfigurationOutput() OrganizationWebhookConfigurationOutput

func (OrganizationWebhookConfigurationOutput) ToOrganizationWebhookConfigurationOutputWithContext

func (o OrganizationWebhookConfigurationOutput) ToOrganizationWebhookConfigurationOutputWithContext(ctx context.Context) OrganizationWebhookConfigurationOutput

func (OrganizationWebhookConfigurationOutput) ToOrganizationWebhookConfigurationPtrOutput

func (o OrganizationWebhookConfigurationOutput) ToOrganizationWebhookConfigurationPtrOutput() OrganizationWebhookConfigurationPtrOutput

func (OrganizationWebhookConfigurationOutput) ToOrganizationWebhookConfigurationPtrOutputWithContext

func (o OrganizationWebhookConfigurationOutput) ToOrganizationWebhookConfigurationPtrOutputWithContext(ctx context.Context) OrganizationWebhookConfigurationPtrOutput

func (OrganizationWebhookConfigurationOutput) Url

URL of the webhook

type OrganizationWebhookConfigurationPtrInput

type OrganizationWebhookConfigurationPtrInput interface {
	pulumi.Input

	ToOrganizationWebhookConfigurationPtrOutput() OrganizationWebhookConfigurationPtrOutput
	ToOrganizationWebhookConfigurationPtrOutputWithContext(context.Context) OrganizationWebhookConfigurationPtrOutput
}

OrganizationWebhookConfigurationPtrInput is an input type that accepts OrganizationWebhookConfigurationArgs, OrganizationWebhookConfigurationPtr and OrganizationWebhookConfigurationPtrOutput values. You can construct a concrete instance of `OrganizationWebhookConfigurationPtrInput` via:

        OrganizationWebhookConfigurationArgs{...}

or:

        nil

type OrganizationWebhookConfigurationPtrOutput

type OrganizationWebhookConfigurationPtrOutput struct{ *pulumi.OutputState }

func (OrganizationWebhookConfigurationPtrOutput) ContentType

func (OrganizationWebhookConfigurationPtrOutput) Elem

func (OrganizationWebhookConfigurationPtrOutput) ElementType

func (OrganizationWebhookConfigurationPtrOutput) InsecureSsl

func (OrganizationWebhookConfigurationPtrOutput) Secret

func (OrganizationWebhookConfigurationPtrOutput) ToOrganizationWebhookConfigurationPtrOutput

func (o OrganizationWebhookConfigurationPtrOutput) ToOrganizationWebhookConfigurationPtrOutput() OrganizationWebhookConfigurationPtrOutput

func (OrganizationWebhookConfigurationPtrOutput) ToOrganizationWebhookConfigurationPtrOutputWithContext

func (o OrganizationWebhookConfigurationPtrOutput) ToOrganizationWebhookConfigurationPtrOutputWithContext(ctx context.Context) OrganizationWebhookConfigurationPtrOutput

func (OrganizationWebhookConfigurationPtrOutput) Url

URL of the webhook

type OrganizationWebhookState

type OrganizationWebhookState struct {
	// Indicate of the webhook should receive events. Defaults to `true`.
	Active pulumi.BoolPtrInput
	// key/value pair of configuration for this webhook. Available keys are `url`, `contentType`, `secret` and `insecureSsl`.
	Configuration OrganizationWebhookConfigurationPtrInput
	Etag          pulumi.StringPtrInput
	// A list of events which should trigger the webhook. See a list of [available events](https://developer.github.com/v3/activity/events/types/)
	Events pulumi.StringArrayInput
	// URL of the webhook
	Url pulumi.StringPtrInput
}

func (OrganizationWebhookState) ElementType

func (OrganizationWebhookState) ElementType() reflect.Type

type ProjectColumn

type ProjectColumn struct {
	pulumi.CustomResourceState

	Etag pulumi.StringOutput `pulumi:"etag"`
	// The name of the column.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of an existing project that the column will be created in.
	ProjectId pulumi.StringOutput `pulumi:"projectId"`
}

This resource allows you to create and manage columns for GitHub projects.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		project, err := github.NewOrganizationProject(ctx, "project", &github.OrganizationProjectArgs{
			Body: pulumi.String("This is an organization project."),
		})
		if err != nil {
			return err
		}
		_, err = github.NewProjectColumn(ctx, "column", &github.ProjectColumnArgs{
			ProjectId: project.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetProjectColumn

func GetProjectColumn(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProjectColumnState, opts ...pulumi.ResourceOption) (*ProjectColumn, error)

GetProjectColumn gets an existing ProjectColumn resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProjectColumn

func NewProjectColumn(ctx *pulumi.Context,
	name string, args *ProjectColumnArgs, opts ...pulumi.ResourceOption) (*ProjectColumn, error)

NewProjectColumn registers a new resource with the given unique name, arguments, and options.

type ProjectColumnArgs

type ProjectColumnArgs struct {
	// The name of the column.
	Name pulumi.StringPtrInput
	// The ID of an existing project that the column will be created in.
	ProjectId pulumi.StringInput
}

The set of arguments for constructing a ProjectColumn resource.

func (ProjectColumnArgs) ElementType

func (ProjectColumnArgs) ElementType() reflect.Type

type ProjectColumnState

type ProjectColumnState struct {
	Etag pulumi.StringPtrInput
	// The name of the column.
	Name pulumi.StringPtrInput
	// The ID of an existing project that the column will be created in.
	ProjectId pulumi.StringPtrInput
}

func (ProjectColumnState) ElementType

func (ProjectColumnState) ElementType() reflect.Type

type Provider

type Provider struct {
	pulumi.ProviderResourceState
}

The 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](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.

func NewProvider

func NewProvider(ctx *pulumi.Context,
	name string, args *ProviderArgs, opts ...pulumi.ResourceOption) (*Provider, error)

NewProvider registers a new resource with the given unique name, arguments, and options.

type ProviderArgs

type ProviderArgs struct {
	// Authenticate without a token. When `anonymous`is true, the provider will not be able to access resourcesthat require
	// authentication.
	//
	// Deprecated: For versions later than 3.0.0, absence of a token enables this mode
	Anonymous pulumi.BoolPtrInput
	// The GitHub Base API URL
	BaseUrl pulumi.StringPtrInput
	// Deprecated: For versions later than 3.0.0, absence of an organization enables this mode
	Individual pulumi.BoolPtrInput
	// Whether server should be accessed without verifying the TLS certificate.
	Insecure pulumi.BoolPtrInput
	// The GitHub organization name to manage. If `individual` is false, `organization` is required.
	Organization pulumi.StringPtrInput
	// The OAuth token used to connect to GitHub. If `anonymous` is false, `token` is required.
	Token pulumi.StringPtrInput
}

The set of arguments for constructing a Provider resource.

func (ProviderArgs) ElementType

func (ProviderArgs) ElementType() reflect.Type

type Repository

type Repository struct {
	pulumi.CustomResourceState

	// Set to `false` to disable merge commits on the repository.
	AllowMergeCommit pulumi.BoolPtrOutput `pulumi:"allowMergeCommit"`
	// Set to `false` to disable rebase merges on the repository.
	AllowRebaseMerge pulumi.BoolPtrOutput `pulumi:"allowRebaseMerge"`
	// Set to `false` to disable squash merges on the repository.
	AllowSquashMerge pulumi.BoolPtrOutput `pulumi:"allowSquashMerge"`
	// Specifies if the repository should be archived. Defaults to `false`. **NOTE** Currently, the API does not support unarchiving.
	Archived pulumi.BoolPtrOutput `pulumi:"archived"`
	// Set to `true` to produce an initial commit in the repository.
	AutoInit pulumi.BoolPtrOutput `pulumi:"autoInit"`
	// 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.
	DefaultBranch pulumi.StringOutput `pulumi:"defaultBranch"`
	// Automatically delete head branch after a pull request is merged. Defaults to `false`.
	DeleteBranchOnMerge pulumi.BoolPtrOutput `pulumi:"deleteBranchOnMerge"`
	// A description of the repository.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	Etag        pulumi.StringOutput    `pulumi:"etag"`
	// A string of the form "orgname/reponame".
	FullName pulumi.StringOutput `pulumi:"fullName"`
	// URL that can be provided to `git clone` to clone the repository anonymously via the git protocol.
	GitCloneUrl pulumi.StringOutput `pulumi:"gitCloneUrl"`
	// Use the [name of the template](https://github.com/github/gitignore) without the extension. For example, "Haskell".
	GitignoreTemplate pulumi.StringPtrOutput `pulumi:"gitignoreTemplate"`
	// Set to `true` to enable the (deprecated) downloads features on the repository.
	HasDownloads pulumi.BoolPtrOutput `pulumi:"hasDownloads"`
	// Set to `true` to enable the GitHub Issues features
	// on the repository.
	HasIssues pulumi.BoolPtrOutput `pulumi:"hasIssues"`
	// Set to `true` to enable the GitHub Projects features on the repository. Per the GitHub [documentation](https://developer.github.com/v3/repos/#create) 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.
	HasProjects pulumi.BoolPtrOutput `pulumi:"hasProjects"`
	// Set to `true` to enable the GitHub Wiki features on
	// the repository.
	HasWiki pulumi.BoolPtrOutput `pulumi:"hasWiki"`
	// URL of a page describing the project.
	HomepageUrl pulumi.StringPtrOutput `pulumi:"homepageUrl"`
	// URL to the repository on the web.
	HtmlUrl pulumi.StringOutput `pulumi:"htmlUrl"`
	// URL that can be provided to `git clone` to clone the repository via HTTPS.
	HttpCloneUrl pulumi.StringOutput `pulumi:"httpCloneUrl"`
	// Set to `true` to tell GitHub that this is a template repository.
	IsTemplate pulumi.BoolPtrOutput `pulumi:"isTemplate"`
	// Use the [name of the template](https://github.com/github/choosealicense.com/tree/gh-pages/_licenses) without the extension. For example, "mit" or "mpl-2.0".
	LicenseTemplate pulumi.StringPtrOutput `pulumi:"licenseTemplate"`
	// The name of the repository.
	Name   pulumi.StringOutput `pulumi:"name"`
	NodeId pulumi.StringOutput `pulumi:"nodeId"`
	// Set to `true` to create a private repository.
	// Repositories are created as public (e.g. open source) by default.
	Private pulumi.BoolPtrOutput `pulumi:"private"`
	// URL that can be provided to `git clone` to clone the repository via SSH.
	SshCloneUrl pulumi.StringOutput `pulumi:"sshCloneUrl"`
	// URL that can be provided to `svn checkout` to check out the repository via GitHub's Subversion protocol emulation.
	SvnUrl pulumi.StringOutput `pulumi:"svnUrl"`
	// Use a template repository to create this resource. See Template Repositories below for details.
	Template RepositoryTemplatePtrOutput `pulumi:"template"`
	// The list of topics of the repository.
	Topics pulumi.StringArrayOutput `pulumi:"topics"`
}

This resource allows you to create and manage repositories within your GitHub organization.

This resource cannot currently be used to manage *personal* repositories, outside of organizations.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.NewRepository(ctx, "example", &github.RepositoryArgs{
			Description: pulumi.String("My awesome codebase"),
			Private:     pulumi.Bool(true),
			Template: &github.RepositoryTemplateArgs{
				Owner:      pulumi.String("github"),
				Repository: pulumi.String("terraform-module-template"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetRepository

func GetRepository(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RepositoryState, opts ...pulumi.ResourceOption) (*Repository, error)

GetRepository gets an existing Repository resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRepository

func NewRepository(ctx *pulumi.Context,
	name string, args *RepositoryArgs, opts ...pulumi.ResourceOption) (*Repository, error)

NewRepository registers a new resource with the given unique name, arguments, and options.

type RepositoryArgs

type RepositoryArgs struct {
	// Set to `false` to disable merge commits on the repository.
	AllowMergeCommit pulumi.BoolPtrInput
	// Set to `false` to disable rebase merges on the repository.
	AllowRebaseMerge pulumi.BoolPtrInput
	// Set to `false` to disable squash merges on the repository.
	AllowSquashMerge pulumi.BoolPtrInput
	// Specifies if the repository should be archived. Defaults to `false`. **NOTE** Currently, the API does not support unarchiving.
	Archived pulumi.BoolPtrInput
	// Set to `true` to produce an initial commit in the repository.
	AutoInit pulumi.BoolPtrInput
	// 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.
	DefaultBranch pulumi.StringPtrInput
	// Automatically delete head branch after a pull request is merged. Defaults to `false`.
	DeleteBranchOnMerge pulumi.BoolPtrInput
	// A description of the repository.
	Description pulumi.StringPtrInput
	// Use the [name of the template](https://github.com/github/gitignore) without the extension. For example, "Haskell".
	GitignoreTemplate pulumi.StringPtrInput
	// Set to `true` to enable the (deprecated) downloads features on the repository.
	HasDownloads pulumi.BoolPtrInput
	// Set to `true` to enable the GitHub Issues features
	// on the repository.
	HasIssues pulumi.BoolPtrInput
	// Set to `true` to enable the GitHub Projects features on the repository. Per the GitHub [documentation](https://developer.github.com/v3/repos/#create) 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.
	HasProjects pulumi.BoolPtrInput
	// Set to `true` to enable the GitHub Wiki features on
	// the repository.
	HasWiki pulumi.BoolPtrInput
	// URL of a page describing the project.
	HomepageUrl pulumi.StringPtrInput
	// Set to `true` to tell GitHub that this is a template repository.
	IsTemplate pulumi.BoolPtrInput
	// Use the [name of the template](https://github.com/github/choosealicense.com/tree/gh-pages/_licenses) without the extension. For example, "mit" or "mpl-2.0".
	LicenseTemplate pulumi.StringPtrInput
	// The name of the repository.
	Name pulumi.StringPtrInput
	// Set to `true` to create a private repository.
	// Repositories are created as public (e.g. open source) by default.
	Private pulumi.BoolPtrInput
	// Use a template repository to create this resource. See Template Repositories below for details.
	Template RepositoryTemplatePtrInput
	// The list of topics of the repository.
	Topics pulumi.StringArrayInput
}

The set of arguments for constructing a Repository resource.

func (RepositoryArgs) ElementType

func (RepositoryArgs) ElementType() reflect.Type

type RepositoryCollaborator

type RepositoryCollaborator struct {
	pulumi.CustomResourceState

	// ID of the invitation to be used in `UserInvitationAccepter`
	InvitationId pulumi.StringOutput `pulumi:"invitationId"`
	// The permission of the outside collaborator for the repository.
	// Must be one of `pull`, `push`, `maintain`, `triage` or `admin`. Defaults to `push`.
	Permission pulumi.StringPtrOutput `pulumi:"permission"`
	// The GitHub repository
	Repository pulumi.StringOutput `pulumi:"repository"`
	// The user to add to the repository as a collaborator.
	Username pulumi.StringOutput `pulumi:"username"`
}

Provides 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](https://help.github.com/articles/adding-outside-collaborators-to-repositories-in-your-organization/) - [Converting an organization member to an outside collaborator](https://help.github.com/articles/converting-an-organization-member-to-an-outside-collaborator/)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.NewRepositoryCollaborator(ctx, "aRepoCollaborator", &github.RepositoryCollaboratorArgs{
			Permission: pulumi.String("admin"),
			Repository: pulumi.String("our-cool-repo"),
			Username:   pulumi.String("SomeUser"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetRepositoryCollaborator

func GetRepositoryCollaborator(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RepositoryCollaboratorState, opts ...pulumi.ResourceOption) (*RepositoryCollaborator, error)

GetRepositoryCollaborator gets an existing RepositoryCollaborator resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRepositoryCollaborator

func NewRepositoryCollaborator(ctx *pulumi.Context,
	name string, args *RepositoryCollaboratorArgs, opts ...pulumi.ResourceOption) (*RepositoryCollaborator, error)

NewRepositoryCollaborator registers a new resource with the given unique name, arguments, and options.

type RepositoryCollaboratorArgs

type RepositoryCollaboratorArgs struct {
	// The permission of the outside collaborator for the repository.
	// Must be one of `pull`, `push`, `maintain`, `triage` or `admin`. Defaults to `push`.
	Permission pulumi.StringPtrInput
	// The GitHub repository
	Repository pulumi.StringInput
	// The user to add to the repository as a collaborator.
	Username pulumi.StringInput
}

The set of arguments for constructing a RepositoryCollaborator resource.

func (RepositoryCollaboratorArgs) ElementType

func (RepositoryCollaboratorArgs) ElementType() reflect.Type

type RepositoryCollaboratorState

type RepositoryCollaboratorState struct {
	// ID of the invitation to be used in `UserInvitationAccepter`
	InvitationId pulumi.StringPtrInput
	// The permission of the outside collaborator for the repository.
	// Must be one of `pull`, `push`, `maintain`, `triage` or `admin`. Defaults to `push`.
	Permission pulumi.StringPtrInput
	// The GitHub repository
	Repository pulumi.StringPtrInput
	// The user to add to the repository as a collaborator.
	Username pulumi.StringPtrInput
}

func (RepositoryCollaboratorState) ElementType

type RepositoryDeployKey

type RepositoryDeployKey struct {
	pulumi.CustomResourceState

	Etag pulumi.StringOutput `pulumi:"etag"`
	// A SSH key.
	Key pulumi.StringOutput `pulumi:"key"`
	// A boolean qualifying the key to be either read only or read/write.
	ReadOnly pulumi.BoolPtrOutput `pulumi:"readOnly"`
	// Name of the GitHub repository.
	Repository pulumi.StringOutput `pulumi:"repository"`
	// A title.
	Title pulumi.StringOutput `pulumi:"title"`
}

Provides 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](https://developer.github.com/guides/managing-deploy-keys/#deploy-keys)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.NewRepositoryDeployKey(ctx, "exampleRepositoryDeployKey", &github.RepositoryDeployKeyArgs{
			Key:        pulumi.String("ssh-rsa AAA..."),
			ReadOnly:   pulumi.Bool(false),
			Repository: pulumi.String("test-repo"),
			Title:      pulumi.String("Repository test key"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetRepositoryDeployKey

func GetRepositoryDeployKey(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RepositoryDeployKeyState, opts ...pulumi.ResourceOption) (*RepositoryDeployKey, error)

GetRepositoryDeployKey gets an existing RepositoryDeployKey resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRepositoryDeployKey

func NewRepositoryDeployKey(ctx *pulumi.Context,
	name string, args *RepositoryDeployKeyArgs, opts ...pulumi.ResourceOption) (*RepositoryDeployKey, error)

NewRepositoryDeployKey registers a new resource with the given unique name, arguments, and options.

type RepositoryDeployKeyArgs

type RepositoryDeployKeyArgs struct {
	// A SSH key.
	Key pulumi.StringInput
	// A boolean qualifying the key to be either read only or read/write.
	ReadOnly pulumi.BoolPtrInput
	// Name of the GitHub repository.
	Repository pulumi.StringInput
	// A title.
	Title pulumi.StringInput
}

The set of arguments for constructing a RepositoryDeployKey resource.

func (RepositoryDeployKeyArgs) ElementType

func (RepositoryDeployKeyArgs) ElementType() reflect.Type

type RepositoryDeployKeyState

type RepositoryDeployKeyState struct {
	Etag pulumi.StringPtrInput
	// A SSH key.
	Key pulumi.StringPtrInput
	// A boolean qualifying the key to be either read only or read/write.
	ReadOnly pulumi.BoolPtrInput
	// Name of the GitHub repository.
	Repository pulumi.StringPtrInput
	// A title.
	Title pulumi.StringPtrInput
}

func (RepositoryDeployKeyState) ElementType

func (RepositoryDeployKeyState) ElementType() reflect.Type

type RepositoryFile

type RepositoryFile struct {
	pulumi.CustomResourceState

	// Git branch (defaults to `master`).
	// The branch must already exist, it will not be created if it does not already exist.
	Branch pulumi.StringPtrOutput `pulumi:"branch"`
	// Committer author name to use.
	CommitAuthor pulumi.StringOutput `pulumi:"commitAuthor"`
	// Committer email address to use.
	CommitEmail pulumi.StringOutput `pulumi:"commitEmail"`
	// Commit message when adding or updating the managed file.
	CommitMessage pulumi.StringOutput `pulumi:"commitMessage"`
	// The file content.
	Content pulumi.StringOutput `pulumi:"content"`
	// The path of the file to manage.
	File pulumi.StringOutput `pulumi:"file"`
	// The repository name
	Repository pulumi.StringOutput `pulumi:"repository"`
	// The SHA blob of the file.
	Sha pulumi.StringOutput `pulumi:"sha"`
}

This resource allows you to create and manage files within a GitHub repository.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.NewRepositoryFile(ctx, "gitignore", &github.RepositoryFileArgs{
			Content:    pulumi.String("**/*.tfstate"),
			File:       pulumi.String(".gitignore"),
			Repository: pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetRepositoryFile

func GetRepositoryFile(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RepositoryFileState, opts ...pulumi.ResourceOption) (*RepositoryFile, error)

GetRepositoryFile gets an existing RepositoryFile resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRepositoryFile

func NewRepositoryFile(ctx *pulumi.Context,
	name string, args *RepositoryFileArgs, opts ...pulumi.ResourceOption) (*RepositoryFile, error)

NewRepositoryFile registers a new resource with the given unique name, arguments, and options.

type RepositoryFileArgs

type RepositoryFileArgs struct {
	// Git branch (defaults to `master`).
	// The branch must already exist, it will not be created if it does not already exist.
	Branch pulumi.StringPtrInput
	// Committer author name to use.
	CommitAuthor pulumi.StringPtrInput
	// Committer email address to use.
	CommitEmail pulumi.StringPtrInput
	// Commit message when adding or updating the managed file.
	CommitMessage pulumi.StringPtrInput
	// The file content.
	Content pulumi.StringInput
	// The path of the file to manage.
	File pulumi.StringInput
	// The repository name
	Repository pulumi.StringInput
}

The set of arguments for constructing a RepositoryFile resource.

func (RepositoryFileArgs) ElementType

func (RepositoryFileArgs) ElementType() reflect.Type

type RepositoryFileState

type RepositoryFileState struct {
	// Git branch (defaults to `master`).
	// The branch must already exist, it will not be created if it does not already exist.
	Branch pulumi.StringPtrInput
	// Committer author name to use.
	CommitAuthor pulumi.StringPtrInput
	// Committer email address to use.
	CommitEmail pulumi.StringPtrInput
	// Commit message when adding or updating the managed file.
	CommitMessage pulumi.StringPtrInput
	// The file content.
	Content pulumi.StringPtrInput
	// The path of the file to manage.
	File pulumi.StringPtrInput
	// The repository name
	Repository pulumi.StringPtrInput
	// The SHA blob of the file.
	Sha pulumi.StringPtrInput
}

func (RepositoryFileState) ElementType

func (RepositoryFileState) ElementType() reflect.Type

type RepositoryProject

type RepositoryProject struct {
	pulumi.CustomResourceState

	// The body of the project.
	Body pulumi.StringPtrOutput `pulumi:"body"`
	Etag pulumi.StringOutput    `pulumi:"etag"`
	// The name of the project.
	Name pulumi.StringOutput `pulumi:"name"`
	// The repository of the project.
	Repository pulumi.StringOutput `pulumi:"repository"`
	// URL of the project
	Url pulumi.StringOutput `pulumi:"url"`
}

This resource allows you to create and manage projects for GitHub repository.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := github.NewRepository(ctx, "example", &github.RepositoryArgs{
			Description: pulumi.String("My awesome codebase"),
			HasProjects: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = github.NewRepositoryProject(ctx, "project", &github.RepositoryProjectArgs{
			Body:       pulumi.String("This is a repository project."),
			Repository: example.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetRepositoryProject

func GetRepositoryProject(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RepositoryProjectState, opts ...pulumi.ResourceOption) (*RepositoryProject, error)

GetRepositoryProject gets an existing RepositoryProject resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRepositoryProject

func NewRepositoryProject(ctx *pulumi.Context,
	name string, args *RepositoryProjectArgs, opts ...pulumi.ResourceOption) (*RepositoryProject, error)

NewRepositoryProject registers a new resource with the given unique name, arguments, and options.

type RepositoryProjectArgs

type RepositoryProjectArgs struct {
	// The body of the project.
	Body pulumi.StringPtrInput
	// The name of the project.
	Name pulumi.StringPtrInput
	// The repository of the project.
	Repository pulumi.StringInput
}

The set of arguments for constructing a RepositoryProject resource.

func (RepositoryProjectArgs) ElementType

func (RepositoryProjectArgs) ElementType() reflect.Type

type RepositoryProjectState

type RepositoryProjectState struct {
	// The body of the project.
	Body pulumi.StringPtrInput
	Etag pulumi.StringPtrInput
	// The name of the project.
	Name pulumi.StringPtrInput
	// The repository of the project.
	Repository pulumi.StringPtrInput
	// URL of the project
	Url pulumi.StringPtrInput
}

func (RepositoryProjectState) ElementType

func (RepositoryProjectState) ElementType() reflect.Type

type RepositoryState

type RepositoryState struct {
	// Set to `false` to disable merge commits on the repository.
	AllowMergeCommit pulumi.BoolPtrInput
	// Set to `false` to disable rebase merges on the repository.
	AllowRebaseMerge pulumi.BoolPtrInput
	// Set to `false` to disable squash merges on the repository.
	AllowSquashMerge pulumi.BoolPtrInput
	// Specifies if the repository should be archived. Defaults to `false`. **NOTE** Currently, the API does not support unarchiving.
	Archived pulumi.BoolPtrInput
	// Set to `true` to produce an initial commit in the repository.
	AutoInit pulumi.BoolPtrInput
	// 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.
	DefaultBranch pulumi.StringPtrInput
	// Automatically delete head branch after a pull request is merged. Defaults to `false`.
	DeleteBranchOnMerge pulumi.BoolPtrInput
	// A description of the repository.
	Description pulumi.StringPtrInput
	Etag        pulumi.StringPtrInput
	// A string of the form "orgname/reponame".
	FullName pulumi.StringPtrInput
	// URL that can be provided to `git clone` to clone the repository anonymously via the git protocol.
	GitCloneUrl pulumi.StringPtrInput
	// Use the [name of the template](https://github.com/github/gitignore) without the extension. For example, "Haskell".
	GitignoreTemplate pulumi.StringPtrInput
	// Set to `true` to enable the (deprecated) downloads features on the repository.
	HasDownloads pulumi.BoolPtrInput
	// Set to `true` to enable the GitHub Issues features
	// on the repository.
	HasIssues pulumi.BoolPtrInput
	// Set to `true` to enable the GitHub Projects features on the repository. Per the GitHub [documentation](https://developer.github.com/v3/repos/#create) 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.
	HasProjects pulumi.BoolPtrInput
	// Set to `true` to enable the GitHub Wiki features on
	// the repository.
	HasWiki pulumi.BoolPtrInput
	// URL of a page describing the project.
	HomepageUrl pulumi.StringPtrInput
	// URL to the repository on the web.
	HtmlUrl pulumi.StringPtrInput
	// URL that can be provided to `git clone` to clone the repository via HTTPS.
	HttpCloneUrl pulumi.StringPtrInput
	// Set to `true` to tell GitHub that this is a template repository.
	IsTemplate pulumi.BoolPtrInput
	// Use the [name of the template](https://github.com/github/choosealicense.com/tree/gh-pages/_licenses) without the extension. For example, "mit" or "mpl-2.0".
	LicenseTemplate pulumi.StringPtrInput
	// The name of the repository.
	Name   pulumi.StringPtrInput
	NodeId pulumi.StringPtrInput
	// Set to `true` to create a private repository.
	// Repositories are created as public (e.g. open source) by default.
	Private pulumi.BoolPtrInput
	// URL that can be provided to `git clone` to clone the repository via SSH.
	SshCloneUrl pulumi.StringPtrInput
	// URL that can be provided to `svn checkout` to check out the repository via GitHub's Subversion protocol emulation.
	SvnUrl pulumi.StringPtrInput
	// Use a template repository to create this resource. See Template Repositories below for details.
	Template RepositoryTemplatePtrInput
	// The list of topics of the repository.
	Topics pulumi.StringArrayInput
}

func (RepositoryState) ElementType

func (RepositoryState) ElementType() reflect.Type

type RepositoryTemplate

type RepositoryTemplate struct {
	Owner      string `pulumi:"owner"`
	Repository string `pulumi:"repository"`
}

type RepositoryTemplateArgs

type RepositoryTemplateArgs struct {
	Owner      pulumi.StringInput `pulumi:"owner"`
	Repository pulumi.StringInput `pulumi:"repository"`
}

func (RepositoryTemplateArgs) ElementType

func (RepositoryTemplateArgs) ElementType() reflect.Type

func (RepositoryTemplateArgs) ToRepositoryTemplateOutput

func (i RepositoryTemplateArgs) ToRepositoryTemplateOutput() RepositoryTemplateOutput

func (RepositoryTemplateArgs) ToRepositoryTemplateOutputWithContext

func (i RepositoryTemplateArgs) ToRepositoryTemplateOutputWithContext(ctx context.Context) RepositoryTemplateOutput

func (RepositoryTemplateArgs) ToRepositoryTemplatePtrOutput

func (i RepositoryTemplateArgs) ToRepositoryTemplatePtrOutput() RepositoryTemplatePtrOutput

func (RepositoryTemplateArgs) ToRepositoryTemplatePtrOutputWithContext

func (i RepositoryTemplateArgs) ToRepositoryTemplatePtrOutputWithContext(ctx context.Context) RepositoryTemplatePtrOutput

type RepositoryTemplateInput

type RepositoryTemplateInput interface {
	pulumi.Input

	ToRepositoryTemplateOutput() RepositoryTemplateOutput
	ToRepositoryTemplateOutputWithContext(context.Context) RepositoryTemplateOutput
}

RepositoryTemplateInput is an input type that accepts RepositoryTemplateArgs and RepositoryTemplateOutput values. You can construct a concrete instance of `RepositoryTemplateInput` via:

RepositoryTemplateArgs{...}

type RepositoryTemplateOutput

type RepositoryTemplateOutput struct{ *pulumi.OutputState }

func (RepositoryTemplateOutput) ElementType

func (RepositoryTemplateOutput) ElementType() reflect.Type

func (RepositoryTemplateOutput) Owner

func (RepositoryTemplateOutput) Repository

func (RepositoryTemplateOutput) ToRepositoryTemplateOutput

func (o RepositoryTemplateOutput) ToRepositoryTemplateOutput() RepositoryTemplateOutput

func (RepositoryTemplateOutput) ToRepositoryTemplateOutputWithContext

func (o RepositoryTemplateOutput) ToRepositoryTemplateOutputWithContext(ctx context.Context) RepositoryTemplateOutput

func (RepositoryTemplateOutput) ToRepositoryTemplatePtrOutput

func (o RepositoryTemplateOutput) ToRepositoryTemplatePtrOutput() RepositoryTemplatePtrOutput

func (RepositoryTemplateOutput) ToRepositoryTemplatePtrOutputWithContext

func (o RepositoryTemplateOutput) ToRepositoryTemplatePtrOutputWithContext(ctx context.Context) RepositoryTemplatePtrOutput

type RepositoryTemplatePtrInput

type RepositoryTemplatePtrInput interface {
	pulumi.Input

	ToRepositoryTemplatePtrOutput() RepositoryTemplatePtrOutput
	ToRepositoryTemplatePtrOutputWithContext(context.Context) RepositoryTemplatePtrOutput
}

RepositoryTemplatePtrInput is an input type that accepts RepositoryTemplateArgs, RepositoryTemplatePtr and RepositoryTemplatePtrOutput values. You can construct a concrete instance of `RepositoryTemplatePtrInput` via:

        RepositoryTemplateArgs{...}

or:

        nil

type RepositoryTemplatePtrOutput

type RepositoryTemplatePtrOutput struct{ *pulumi.OutputState }

func (RepositoryTemplatePtrOutput) Elem

func (RepositoryTemplatePtrOutput) ElementType

func (RepositoryTemplatePtrOutput) Owner

func (RepositoryTemplatePtrOutput) Repository

func (RepositoryTemplatePtrOutput) ToRepositoryTemplatePtrOutput

func (o RepositoryTemplatePtrOutput) ToRepositoryTemplatePtrOutput() RepositoryTemplatePtrOutput

func (RepositoryTemplatePtrOutput) ToRepositoryTemplatePtrOutputWithContext

func (o RepositoryTemplatePtrOutput) ToRepositoryTemplatePtrOutputWithContext(ctx context.Context) RepositoryTemplatePtrOutput

type RepositoryWebhook

type RepositoryWebhook struct {
	pulumi.CustomResourceState

	// Indicate of the webhook should receive events. Defaults to `true`.
	Active pulumi.BoolPtrOutput `pulumi:"active"`
	// key/value pair of configuration for this webhook. Available keys are `url`, `contentType`, `secret` and `insecureSsl`. `secret` is [the shared secret, see API documentation](https://developer.github.com/v3/repos/hooks/#create-a-hook).
	Configuration RepositoryWebhookConfigurationPtrOutput `pulumi:"configuration"`
	Etag          pulumi.StringOutput                     `pulumi:"etag"`
	// A list of events which should trigger the webhook. See a list of [available events](https://developer.github.com/v3/activity/events/types/).
	Events pulumi.StringArrayOutput `pulumi:"events"`
	// The repository of the webhook.
	Repository pulumi.StringOutput `pulumi:"repository"`
	// URL of the webhook
	Url pulumi.StringOutput `pulumi:"url"`
}

This resource allows you to create and manage webhooks for repositories within your GitHub organization.

This resource cannot currently be used to manage webhooks for *personal* repositories, outside of organizations.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		repo, err := github.NewRepository(ctx, "repo", &github.RepositoryArgs{
			Description: pulumi.String("Terraform acceptance tests"),
			HomepageUrl: pulumi.String("http://example.com/"),
			Private:     pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		_, err = github.NewRepositoryWebhook(ctx, "foo", &github.RepositoryWebhookArgs{
			Active: pulumi.Bool(false),
			Configuration: &github.RepositoryWebhookConfigurationArgs{
				ContentType: pulumi.String("form"),
				InsecureSsl: pulumi.Bool(false),
				Url:         pulumi.String("https://google.de/"),
			},
			Events: pulumi.StringArray{
				pulumi.String("issues"),
			},
			Repository: repo.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetRepositoryWebhook

func GetRepositoryWebhook(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RepositoryWebhookState, opts ...pulumi.ResourceOption) (*RepositoryWebhook, error)

GetRepositoryWebhook gets an existing RepositoryWebhook resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRepositoryWebhook

func NewRepositoryWebhook(ctx *pulumi.Context,
	name string, args *RepositoryWebhookArgs, opts ...pulumi.ResourceOption) (*RepositoryWebhook, error)

NewRepositoryWebhook registers a new resource with the given unique name, arguments, and options.

type RepositoryWebhookArgs

type RepositoryWebhookArgs struct {
	// Indicate of the webhook should receive events. Defaults to `true`.
	Active pulumi.BoolPtrInput
	// key/value pair of configuration for this webhook. Available keys are `url`, `contentType`, `secret` and `insecureSsl`. `secret` is [the shared secret, see API documentation](https://developer.github.com/v3/repos/hooks/#create-a-hook).
	Configuration RepositoryWebhookConfigurationPtrInput
	// A list of events which should trigger the webhook. See a list of [available events](https://developer.github.com/v3/activity/events/types/).
	Events pulumi.StringArrayInput
	// The repository of the webhook.
	Repository pulumi.StringInput
}

The set of arguments for constructing a RepositoryWebhook resource.

func (RepositoryWebhookArgs) ElementType

func (RepositoryWebhookArgs) ElementType() reflect.Type

type RepositoryWebhookConfiguration

type RepositoryWebhookConfiguration struct {
	ContentType *string `pulumi:"contentType"`
	InsecureSsl *bool   `pulumi:"insecureSsl"`
	Secret      *string `pulumi:"secret"`
	// URL of the webhook
	Url string `pulumi:"url"`
}

type RepositoryWebhookConfigurationArgs

type RepositoryWebhookConfigurationArgs struct {
	ContentType pulumi.StringPtrInput `pulumi:"contentType"`
	InsecureSsl pulumi.BoolPtrInput   `pulumi:"insecureSsl"`
	Secret      pulumi.StringPtrInput `pulumi:"secret"`
	// URL of the webhook
	Url pulumi.StringInput `pulumi:"url"`
}

func (RepositoryWebhookConfigurationArgs) ElementType

func (RepositoryWebhookConfigurationArgs) ToRepositoryWebhookConfigurationOutput

func (i RepositoryWebhookConfigurationArgs) ToRepositoryWebhookConfigurationOutput() RepositoryWebhookConfigurationOutput

func (RepositoryWebhookConfigurationArgs) ToRepositoryWebhookConfigurationOutputWithContext

func (i RepositoryWebhookConfigurationArgs) ToRepositoryWebhookConfigurationOutputWithContext(ctx context.Context) RepositoryWebhookConfigurationOutput

func (RepositoryWebhookConfigurationArgs) ToRepositoryWebhookConfigurationPtrOutput

func (i RepositoryWebhookConfigurationArgs) ToRepositoryWebhookConfigurationPtrOutput() RepositoryWebhookConfigurationPtrOutput

func (RepositoryWebhookConfigurationArgs) ToRepositoryWebhookConfigurationPtrOutputWithContext

func (i RepositoryWebhookConfigurationArgs) ToRepositoryWebhookConfigurationPtrOutputWithContext(ctx context.Context) RepositoryWebhookConfigurationPtrOutput

type RepositoryWebhookConfigurationInput

type RepositoryWebhookConfigurationInput interface {
	pulumi.Input

	ToRepositoryWebhookConfigurationOutput() RepositoryWebhookConfigurationOutput
	ToRepositoryWebhookConfigurationOutputWithContext(context.Context) RepositoryWebhookConfigurationOutput
}

RepositoryWebhookConfigurationInput is an input type that accepts RepositoryWebhookConfigurationArgs and RepositoryWebhookConfigurationOutput values. You can construct a concrete instance of `RepositoryWebhookConfigurationInput` via:

RepositoryWebhookConfigurationArgs{...}

type RepositoryWebhookConfigurationOutput

type RepositoryWebhookConfigurationOutput struct{ *pulumi.OutputState }

func (RepositoryWebhookConfigurationOutput) ContentType

func (RepositoryWebhookConfigurationOutput) ElementType

func (RepositoryWebhookConfigurationOutput) InsecureSsl

func (RepositoryWebhookConfigurationOutput) Secret

func (RepositoryWebhookConfigurationOutput) ToRepositoryWebhookConfigurationOutput

func (o RepositoryWebhookConfigurationOutput) ToRepositoryWebhookConfigurationOutput() RepositoryWebhookConfigurationOutput

func (RepositoryWebhookConfigurationOutput) ToRepositoryWebhookConfigurationOutputWithContext

func (o RepositoryWebhookConfigurationOutput) ToRepositoryWebhookConfigurationOutputWithContext(ctx context.Context) RepositoryWebhookConfigurationOutput

func (RepositoryWebhookConfigurationOutput) ToRepositoryWebhookConfigurationPtrOutput

func (o RepositoryWebhookConfigurationOutput) ToRepositoryWebhookConfigurationPtrOutput() RepositoryWebhookConfigurationPtrOutput

func (RepositoryWebhookConfigurationOutput) ToRepositoryWebhookConfigurationPtrOutputWithContext

func (o RepositoryWebhookConfigurationOutput) ToRepositoryWebhookConfigurationPtrOutputWithContext(ctx context.Context) RepositoryWebhookConfigurationPtrOutput

func (RepositoryWebhookConfigurationOutput) Url

URL of the webhook

type RepositoryWebhookConfigurationPtrInput

type RepositoryWebhookConfigurationPtrInput interface {
	pulumi.Input

	ToRepositoryWebhookConfigurationPtrOutput() RepositoryWebhookConfigurationPtrOutput
	ToRepositoryWebhookConfigurationPtrOutputWithContext(context.Context) RepositoryWebhookConfigurationPtrOutput
}

RepositoryWebhookConfigurationPtrInput is an input type that accepts RepositoryWebhookConfigurationArgs, RepositoryWebhookConfigurationPtr and RepositoryWebhookConfigurationPtrOutput values. You can construct a concrete instance of `RepositoryWebhookConfigurationPtrInput` via:

        RepositoryWebhookConfigurationArgs{...}

or:

        nil

type RepositoryWebhookConfigurationPtrOutput

type RepositoryWebhookConfigurationPtrOutput struct{ *pulumi.OutputState }

func (RepositoryWebhookConfigurationPtrOutput) ContentType

func (RepositoryWebhookConfigurationPtrOutput) Elem

func (RepositoryWebhookConfigurationPtrOutput) ElementType

func (RepositoryWebhookConfigurationPtrOutput) InsecureSsl

func (RepositoryWebhookConfigurationPtrOutput) Secret

func (RepositoryWebhookConfigurationPtrOutput) ToRepositoryWebhookConfigurationPtrOutput

func (o RepositoryWebhookConfigurationPtrOutput) ToRepositoryWebhookConfigurationPtrOutput() RepositoryWebhookConfigurationPtrOutput

func (RepositoryWebhookConfigurationPtrOutput) ToRepositoryWebhookConfigurationPtrOutputWithContext

func (o RepositoryWebhookConfigurationPtrOutput) ToRepositoryWebhookConfigurationPtrOutputWithContext(ctx context.Context) RepositoryWebhookConfigurationPtrOutput

func (RepositoryWebhookConfigurationPtrOutput) Url

URL of the webhook

type RepositoryWebhookState

type RepositoryWebhookState struct {
	// Indicate of the webhook should receive events. Defaults to `true`.
	Active pulumi.BoolPtrInput
	// key/value pair of configuration for this webhook. Available keys are `url`, `contentType`, `secret` and `insecureSsl`. `secret` is [the shared secret, see API documentation](https://developer.github.com/v3/repos/hooks/#create-a-hook).
	Configuration RepositoryWebhookConfigurationPtrInput
	Etag          pulumi.StringPtrInput
	// A list of events which should trigger the webhook. See a list of [available events](https://developer.github.com/v3/activity/events/types/).
	Events pulumi.StringArrayInput
	// The repository of the webhook.
	Repository pulumi.StringPtrInput
	// URL of the webhook
	Url pulumi.StringPtrInput
}

func (RepositoryWebhookState) ElementType

func (RepositoryWebhookState) ElementType() reflect.Type

type Team

type Team struct {
	pulumi.CustomResourceState

	// A description of the team.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	Etag        pulumi.StringOutput    `pulumi:"etag"`
	// The LDAP Distinguished Name of the group where membership will be synchronized. Only available in GitHub Enterprise.
	LdapDn pulumi.StringPtrOutput `pulumi:"ldapDn"`
	// The name of the team.
	Name   pulumi.StringOutput `pulumi:"name"`
	NodeId pulumi.StringOutput `pulumi:"nodeId"`
	// The ID of the parent team, if this is a nested team.
	ParentTeamId pulumi.IntPtrOutput `pulumi:"parentTeamId"`
	// The level of privacy for the team. Must be one of `secret` or `closed`.
	// Defaults to `secret`.
	Privacy pulumi.StringPtrOutput `pulumi:"privacy"`
	// 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 [`BranchProtection`](https://www.terraform.io/docs/providers/github/r/branch_protection.html).
	Slug pulumi.StringOutput `pulumi:"slug"`
}

Provides 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

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.NewTeam(ctx, "someTeam", &github.TeamArgs{
			Description: pulumi.String("Some cool team"),
			Privacy:     pulumi.String("closed"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetTeam

func GetTeam(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TeamState, opts ...pulumi.ResourceOption) (*Team, error)

GetTeam gets an existing Team resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTeam

func NewTeam(ctx *pulumi.Context,
	name string, args *TeamArgs, opts ...pulumi.ResourceOption) (*Team, error)

NewTeam registers a new resource with the given unique name, arguments, and options.

type TeamArgs

type TeamArgs struct {
	// A description of the team.
	Description pulumi.StringPtrInput
	// The LDAP Distinguished Name of the group where membership will be synchronized. Only available in GitHub Enterprise.
	LdapDn pulumi.StringPtrInput
	// The name of the team.
	Name pulumi.StringPtrInput
	// The ID of the parent team, if this is a nested team.
	ParentTeamId pulumi.IntPtrInput
	// The level of privacy for the team. Must be one of `secret` or `closed`.
	// Defaults to `secret`.
	Privacy pulumi.StringPtrInput
}

The set of arguments for constructing a Team resource.

func (TeamArgs) ElementType

func (TeamArgs) ElementType() reflect.Type

type TeamMembership

type TeamMembership struct {
	pulumi.CustomResourceState

	Etag pulumi.StringOutput `pulumi:"etag"`
	// The role of the user within the team.
	// Must be one of `member` or `maintainer`. Defaults to `member`.
	Role pulumi.StringPtrOutput `pulumi:"role"`
	// The GitHub team id
	TeamId pulumi.StringOutput `pulumi:"teamId"`
	// The user to add to the team.
	Username pulumi.StringOutput `pulumi:"username"`
}

Provides 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

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.NewMembership(ctx, "membershipForSomeUser", &github.MembershipArgs{
			Role:     pulumi.String("member"),
			Username: pulumi.String("SomeUser"),
		})
		if err != nil {
			return err
		}
		someTeam, err := github.NewTeam(ctx, "someTeam", &github.TeamArgs{
			Description: pulumi.String("Some cool team"),
		})
		if err != nil {
			return err
		}
		_, err = github.NewTeamMembership(ctx, "someTeamMembership", &github.TeamMembershipArgs{
			Role:     pulumi.String("member"),
			TeamId:   someTeam.ID(),
			Username: pulumi.String("SomeUser"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetTeamMembership

func GetTeamMembership(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TeamMembershipState, opts ...pulumi.ResourceOption) (*TeamMembership, error)

GetTeamMembership gets an existing TeamMembership resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTeamMembership

func NewTeamMembership(ctx *pulumi.Context,
	name string, args *TeamMembershipArgs, opts ...pulumi.ResourceOption) (*TeamMembership, error)

NewTeamMembership registers a new resource with the given unique name, arguments, and options.

type TeamMembershipArgs

type TeamMembershipArgs struct {
	// The role of the user within the team.
	// Must be one of `member` or `maintainer`. Defaults to `member`.
	Role pulumi.StringPtrInput
	// The GitHub team id
	TeamId pulumi.StringInput
	// The user to add to the team.
	Username pulumi.StringInput
}

The set of arguments for constructing a TeamMembership resource.

func (TeamMembershipArgs) ElementType

func (TeamMembershipArgs) ElementType() reflect.Type

type TeamMembershipState

type TeamMembershipState struct {
	Etag pulumi.StringPtrInput
	// The role of the user within the team.
	// Must be one of `member` or `maintainer`. Defaults to `member`.
	Role pulumi.StringPtrInput
	// The GitHub team id
	TeamId pulumi.StringPtrInput
	// The user to add to the team.
	Username pulumi.StringPtrInput
}

func (TeamMembershipState) ElementType

func (TeamMembershipState) ElementType() reflect.Type

type TeamRepository

type TeamRepository struct {
	pulumi.CustomResourceState

	Etag pulumi.StringOutput `pulumi:"etag"`
	// The permissions of team members regarding the repository.
	// Must be one of `pull`, `triage`, `push`, `maintain`, or `admin`. Defaults to `pull`.
	Permission pulumi.StringPtrOutput `pulumi:"permission"`
	// The repository to add to the team.
	Repository pulumi.StringOutput `pulumi:"repository"`
	// The GitHub team id
	TeamId pulumi.StringOutput `pulumi:"teamId"`
}

This 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 `Repository`.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		someTeam, err := github.NewTeam(ctx, "someTeam", &github.TeamArgs{
			Description: pulumi.String("Some cool team"),
		})
		if err != nil {
			return err
		}
		someRepo, err := github.NewRepository(ctx, "someRepo", nil)
		if err != nil {
			return err
		}
		_, err = github.NewTeamRepository(ctx, "someTeamRepo", &github.TeamRepositoryArgs{
			Permission: pulumi.String("pull"),
			Repository: someRepo.Name,
			TeamId:     someTeam.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetTeamRepository

func GetTeamRepository(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TeamRepositoryState, opts ...pulumi.ResourceOption) (*TeamRepository, error)

GetTeamRepository gets an existing TeamRepository resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTeamRepository

func NewTeamRepository(ctx *pulumi.Context,
	name string, args *TeamRepositoryArgs, opts ...pulumi.ResourceOption) (*TeamRepository, error)

NewTeamRepository registers a new resource with the given unique name, arguments, and options.

type TeamRepositoryArgs

type TeamRepositoryArgs struct {
	// The permissions of team members regarding the repository.
	// Must be one of `pull`, `triage`, `push`, `maintain`, or `admin`. Defaults to `pull`.
	Permission pulumi.StringPtrInput
	// The repository to add to the team.
	Repository pulumi.StringInput
	// The GitHub team id
	TeamId pulumi.StringInput
}

The set of arguments for constructing a TeamRepository resource.

func (TeamRepositoryArgs) ElementType

func (TeamRepositoryArgs) ElementType() reflect.Type

type TeamRepositoryState

type TeamRepositoryState struct {
	Etag pulumi.StringPtrInput
	// The permissions of team members regarding the repository.
	// Must be one of `pull`, `triage`, `push`, `maintain`, or `admin`. Defaults to `pull`.
	Permission pulumi.StringPtrInput
	// The repository to add to the team.
	Repository pulumi.StringPtrInput
	// The GitHub team id
	TeamId pulumi.StringPtrInput
}

func (TeamRepositoryState) ElementType

func (TeamRepositoryState) ElementType() reflect.Type

type TeamState

type TeamState struct {
	// A description of the team.
	Description pulumi.StringPtrInput
	Etag        pulumi.StringPtrInput
	// The LDAP Distinguished Name of the group where membership will be synchronized. Only available in GitHub Enterprise.
	LdapDn pulumi.StringPtrInput
	// The name of the team.
	Name   pulumi.StringPtrInput
	NodeId pulumi.StringPtrInput
	// The ID of the parent team, if this is a nested team.
	ParentTeamId pulumi.IntPtrInput
	// The level of privacy for the team. Must be one of `secret` or `closed`.
	// Defaults to `secret`.
	Privacy pulumi.StringPtrInput
	// 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 [`BranchProtection`](https://www.terraform.io/docs/providers/github/r/branch_protection.html).
	Slug pulumi.StringPtrInput
}

func (TeamState) ElementType

func (TeamState) ElementType() reflect.Type

type TeamSyncGroupMapping added in v1.3.0

type TeamSyncGroupMapping struct {
	pulumi.CustomResourceState

	Etag pulumi.StringOutput `pulumi:"etag"`
	// An Array of GitHub Identity Provider Groups (or empty []).  Each `group` block consists of the fields documented below.
	// ***
	Groups TeamSyncGroupMappingGroupArrayOutput `pulumi:"groups"`
	// Slug of the team
	TeamSlug pulumi.StringOutput `pulumi:"teamSlug"`
}

This 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

func GetTeamSyncGroupMapping added in v1.3.0

func GetTeamSyncGroupMapping(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TeamSyncGroupMappingState, opts ...pulumi.ResourceOption) (*TeamSyncGroupMapping, error)

GetTeamSyncGroupMapping gets an existing TeamSyncGroupMapping resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTeamSyncGroupMapping added in v1.3.0

func NewTeamSyncGroupMapping(ctx *pulumi.Context,
	name string, args *TeamSyncGroupMappingArgs, opts ...pulumi.ResourceOption) (*TeamSyncGroupMapping, error)

NewTeamSyncGroupMapping registers a new resource with the given unique name, arguments, and options.

type TeamSyncGroupMappingArgs added in v1.3.0

type TeamSyncGroupMappingArgs struct {
	// An Array of GitHub Identity Provider Groups (or empty []).  Each `group` block consists of the fields documented below.
	// ***
	Groups TeamSyncGroupMappingGroupArrayInput
	// Slug of the team
	TeamSlug pulumi.StringInput
}

The set of arguments for constructing a TeamSyncGroupMapping resource.

func (TeamSyncGroupMappingArgs) ElementType added in v1.3.0

func (TeamSyncGroupMappingArgs) ElementType() reflect.Type

type TeamSyncGroupMappingGroup added in v1.3.0

type TeamSyncGroupMappingGroup struct {
	// The description of the IdP group.
	GroupDescription string `pulumi:"groupDescription"`
	// The ID of the IdP group.
	GroupId string `pulumi:"groupId"`
	// The name of the IdP group.
	GroupName string `pulumi:"groupName"`
}

type TeamSyncGroupMappingGroupArgs added in v1.3.0

type TeamSyncGroupMappingGroupArgs struct {
	// The description of the IdP group.
	GroupDescription pulumi.StringInput `pulumi:"groupDescription"`
	// The ID of the IdP group.
	GroupId pulumi.StringInput `pulumi:"groupId"`
	// The name of the IdP group.
	GroupName pulumi.StringInput `pulumi:"groupName"`
}

func (TeamSyncGroupMappingGroupArgs) ElementType added in v1.3.0

func (TeamSyncGroupMappingGroupArgs) ToTeamSyncGroupMappingGroupOutput added in v1.3.0

func (i TeamSyncGroupMappingGroupArgs) ToTeamSyncGroupMappingGroupOutput() TeamSyncGroupMappingGroupOutput

func (TeamSyncGroupMappingGroupArgs) ToTeamSyncGroupMappingGroupOutputWithContext added in v1.3.0

func (i TeamSyncGroupMappingGroupArgs) ToTeamSyncGroupMappingGroupOutputWithContext(ctx context.Context) TeamSyncGroupMappingGroupOutput

type TeamSyncGroupMappingGroupArray added in v1.3.0

type TeamSyncGroupMappingGroupArray []TeamSyncGroupMappingGroupInput

func (TeamSyncGroupMappingGroupArray) ElementType added in v1.3.0

func (TeamSyncGroupMappingGroupArray) ToTeamSyncGroupMappingGroupArrayOutput added in v1.3.0

func (i TeamSyncGroupMappingGroupArray) ToTeamSyncGroupMappingGroupArrayOutput() TeamSyncGroupMappingGroupArrayOutput

func (TeamSyncGroupMappingGroupArray) ToTeamSyncGroupMappingGroupArrayOutputWithContext added in v1.3.0

func (i TeamSyncGroupMappingGroupArray) ToTeamSyncGroupMappingGroupArrayOutputWithContext(ctx context.Context) TeamSyncGroupMappingGroupArrayOutput

type TeamSyncGroupMappingGroupArrayInput added in v1.3.0

type TeamSyncGroupMappingGroupArrayInput interface {
	pulumi.Input

	ToTeamSyncGroupMappingGroupArrayOutput() TeamSyncGroupMappingGroupArrayOutput
	ToTeamSyncGroupMappingGroupArrayOutputWithContext(context.Context) TeamSyncGroupMappingGroupArrayOutput
}

TeamSyncGroupMappingGroupArrayInput is an input type that accepts TeamSyncGroupMappingGroupArray and TeamSyncGroupMappingGroupArrayOutput values. You can construct a concrete instance of `TeamSyncGroupMappingGroupArrayInput` via:

TeamSyncGroupMappingGroupArray{ TeamSyncGroupMappingGroupArgs{...} }

type TeamSyncGroupMappingGroupArrayOutput added in v1.3.0

type TeamSyncGroupMappingGroupArrayOutput struct{ *pulumi.OutputState }

func (TeamSyncGroupMappingGroupArrayOutput) ElementType added in v1.3.0

func (TeamSyncGroupMappingGroupArrayOutput) Index added in v1.3.0

func (TeamSyncGroupMappingGroupArrayOutput) ToTeamSyncGroupMappingGroupArrayOutput added in v1.3.0

func (o TeamSyncGroupMappingGroupArrayOutput) ToTeamSyncGroupMappingGroupArrayOutput() TeamSyncGroupMappingGroupArrayOutput

func (TeamSyncGroupMappingGroupArrayOutput) ToTeamSyncGroupMappingGroupArrayOutputWithContext added in v1.3.0

func (o TeamSyncGroupMappingGroupArrayOutput) ToTeamSyncGroupMappingGroupArrayOutputWithContext(ctx context.Context) TeamSyncGroupMappingGroupArrayOutput

type TeamSyncGroupMappingGroupInput added in v1.3.0

type TeamSyncGroupMappingGroupInput interface {
	pulumi.Input

	ToTeamSyncGroupMappingGroupOutput() TeamSyncGroupMappingGroupOutput
	ToTeamSyncGroupMappingGroupOutputWithContext(context.Context) TeamSyncGroupMappingGroupOutput
}

TeamSyncGroupMappingGroupInput is an input type that accepts TeamSyncGroupMappingGroupArgs and TeamSyncGroupMappingGroupOutput values. You can construct a concrete instance of `TeamSyncGroupMappingGroupInput` via:

TeamSyncGroupMappingGroupArgs{...}

type TeamSyncGroupMappingGroupOutput added in v1.3.0

type TeamSyncGroupMappingGroupOutput struct{ *pulumi.OutputState }

func (TeamSyncGroupMappingGroupOutput) ElementType added in v1.3.0

func (TeamSyncGroupMappingGroupOutput) GroupDescription added in v1.3.0

The description of the IdP group.

func (TeamSyncGroupMappingGroupOutput) GroupId added in v1.3.0

The ID of the IdP group.

func (TeamSyncGroupMappingGroupOutput) GroupName added in v1.3.0

The name of the IdP group.

func (TeamSyncGroupMappingGroupOutput) ToTeamSyncGroupMappingGroupOutput added in v1.3.0

func (o TeamSyncGroupMappingGroupOutput) ToTeamSyncGroupMappingGroupOutput() TeamSyncGroupMappingGroupOutput

func (TeamSyncGroupMappingGroupOutput) ToTeamSyncGroupMappingGroupOutputWithContext added in v1.3.0

func (o TeamSyncGroupMappingGroupOutput) ToTeamSyncGroupMappingGroupOutputWithContext(ctx context.Context) TeamSyncGroupMappingGroupOutput

type TeamSyncGroupMappingState added in v1.3.0

type TeamSyncGroupMappingState struct {
	Etag pulumi.StringPtrInput
	// An Array of GitHub Identity Provider Groups (or empty []).  Each `group` block consists of the fields documented below.
	// ***
	Groups TeamSyncGroupMappingGroupArrayInput
	// Slug of the team
	TeamSlug pulumi.StringPtrInput
}

func (TeamSyncGroupMappingState) ElementType added in v1.3.0

func (TeamSyncGroupMappingState) ElementType() reflect.Type

type UserGpgKey

type UserGpgKey struct {
	pulumi.CustomResourceState

	// Your public GPG key, generated in ASCII-armored format.
	// See [Generating a new GPG key](https://help.github.com/articles/generating-a-new-gpg-key/) for help on creating a GPG key.
	ArmoredPublicKey pulumi.StringOutput `pulumi:"armoredPublicKey"`
	Etag             pulumi.StringOutput `pulumi:"etag"`
	// The key ID of the GPG key, e.g. `3262EFF25BA0D270`
	KeyId pulumi.StringOutput `pulumi:"keyId"`
}

Provides a GitHub user's GPG key resource.

This resource allows you to add/remove GPG keys from your user account.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := github.NewUserGpgKey(ctx, "example", &github.UserGpgKeyArgs{
			ArmoredPublicKey: pulumi.String(fmt.Sprintf("%v%v%v", "-----BEGIN PGP PUBLIC KEY BLOCK-----\n", "...\n", "-----END PGP PUBLIC KEY BLOCK-----\n")),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetUserGpgKey

func GetUserGpgKey(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *UserGpgKeyState, opts ...pulumi.ResourceOption) (*UserGpgKey, error)

GetUserGpgKey gets an existing UserGpgKey resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewUserGpgKey

func NewUserGpgKey(ctx *pulumi.Context,
	name string, args *UserGpgKeyArgs, opts ...pulumi.ResourceOption) (*UserGpgKey, error)

NewUserGpgKey registers a new resource with the given unique name, arguments, and options.

type UserGpgKeyArgs

type UserGpgKeyArgs struct {
	// Your public GPG key, generated in ASCII-armored format.
	// See [Generating a new GPG key](https://help.github.com/articles/generating-a-new-gpg-key/) for help on creating a GPG key.
	ArmoredPublicKey pulumi.StringInput
}

The set of arguments for constructing a UserGpgKey resource.

func (UserGpgKeyArgs) ElementType

func (UserGpgKeyArgs) ElementType() reflect.Type

type UserGpgKeyState

type UserGpgKeyState struct {
	// Your public GPG key, generated in ASCII-armored format.
	// See [Generating a new GPG key](https://help.github.com/articles/generating-a-new-gpg-key/) for help on creating a GPG key.
	ArmoredPublicKey pulumi.StringPtrInput
	Etag             pulumi.StringPtrInput
	// The key ID of the GPG key, e.g. `3262EFF25BA0D270`
	KeyId pulumi.StringPtrInput
}

func (UserGpgKeyState) ElementType

func (UserGpgKeyState) ElementType() reflect.Type

type UserInvitationAccepter

type UserInvitationAccepter struct {
	pulumi.CustomResourceState

	// ID of the invitation to accept
	InvitationId pulumi.StringOutput `pulumi:"invitationId"`
}

Provides a resource to manage GitHub repository collaborator invitations.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-github/sdk/go/github"
"github.com/pulumi/pulumi-github/sdk/go/github/providers"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleRepository, err := github.NewRepository(ctx, "exampleRepository", nil)
		if err != nil {
			return err
		}
		exampleRepositoryCollaborator, err := github.NewRepositoryCollaborator(ctx, "exampleRepositoryCollaborator", &github.RepositoryCollaboratorArgs{
			Permission: pulumi.String("push"),
			Repository: exampleRepository.Name,
			Username:   pulumi.String("example-username"),
		})
		if err != nil {
			return err
		}
		_, err = providers.Newgithub(ctx, "invitee", &providers.githubArgs{
			Token: pulumi.Any(_var.Invitee_token),
		})
		if err != nil {
			return err
		}
		_, err = github.NewUserInvitationAccepter(ctx, "exampleUserInvitationAccepter", &github.UserInvitationAccepterArgs{
			InvitationId: exampleRepositoryCollaborator.InvitationId,
		}, pulumi.Provider("github.invitee"))
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetUserInvitationAccepter

func GetUserInvitationAccepter(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *UserInvitationAccepterState, opts ...pulumi.ResourceOption) (*UserInvitationAccepter, error)

GetUserInvitationAccepter gets an existing UserInvitationAccepter resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewUserInvitationAccepter

func NewUserInvitationAccepter(ctx *pulumi.Context,
	name string, args *UserInvitationAccepterArgs, opts ...pulumi.ResourceOption) (*UserInvitationAccepter, error)

NewUserInvitationAccepter registers a new resource with the given unique name, arguments, and options.

type UserInvitationAccepterArgs

type UserInvitationAccepterArgs struct {
	// ID of the invitation to accept
	InvitationId pulumi.StringInput
}

The set of arguments for constructing a UserInvitationAccepter resource.

func (UserInvitationAccepterArgs) ElementType

func (UserInvitationAccepterArgs) ElementType() reflect.Type

type UserInvitationAccepterState

type UserInvitationAccepterState struct {
	// ID of the invitation to accept
	InvitationId pulumi.StringPtrInput
}

func (UserInvitationAccepterState) ElementType

type UserSshKey

type UserSshKey struct {
	pulumi.CustomResourceState

	Etag pulumi.StringOutput `pulumi:"etag"`
	// The public SSH key to add to your GitHub account.
	Key pulumi.StringOutput `pulumi:"key"`
	// A descriptive name for the new key. e.g. `Personal MacBook Air`
	Title pulumi.StringOutput `pulumi:"title"`
	// The URL of the SSH key
	Url pulumi.StringOutput `pulumi:"url"`
}

Provides a GitHub user's SSH key resource.

This resource allows you to add/remove SSH keys from your user account.

func GetUserSshKey

func GetUserSshKey(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *UserSshKeyState, opts ...pulumi.ResourceOption) (*UserSshKey, error)

GetUserSshKey gets an existing UserSshKey resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewUserSshKey

func NewUserSshKey(ctx *pulumi.Context,
	name string, args *UserSshKeyArgs, opts ...pulumi.ResourceOption) (*UserSshKey, error)

NewUserSshKey registers a new resource with the given unique name, arguments, and options.

type UserSshKeyArgs

type UserSshKeyArgs struct {
	// The public SSH key to add to your GitHub account.
	Key pulumi.StringInput
	// A descriptive name for the new key. e.g. `Personal MacBook Air`
	Title pulumi.StringInput
}

The set of arguments for constructing a UserSshKey resource.

func (UserSshKeyArgs) ElementType

func (UserSshKeyArgs) ElementType() reflect.Type

type UserSshKeyState

type UserSshKeyState struct {
	Etag pulumi.StringPtrInput
	// The public SSH key to add to your GitHub account.
	Key pulumi.StringPtrInput
	// A descriptive name for the new key. e.g. `Personal MacBook Air`
	Title pulumi.StringPtrInput
	// The URL of the SSH key
	Url pulumi.StringPtrInput
}

func (UserSshKeyState) ElementType

func (UserSshKeyState) ElementType() reflect.Type

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL