securesourcemanager

package
v8.12.1 Latest Latest
Warning

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

Go to latest
Published: Dec 21, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BranchRule added in v8.6.0

type BranchRule struct {
	pulumi.CustomResourceState

	// Determines if allow stale reviews or approvals before merging to the branch.
	AllowStaleReviews pulumi.BoolPtrOutput `pulumi:"allowStaleReviews"`
	// The ID for the BranchRule.
	BranchRuleId pulumi.StringOutput `pulumi:"branchRuleId"`
	// Time the BranchRule was created in UTC.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Determines if the branch rule is disabled or not.
	Disabled pulumi.BoolPtrOutput `pulumi:"disabled"`
	// The BranchRule matches branches based on the specified regular expression. Use .* to match all branches.
	IncludePattern pulumi.StringOutput `pulumi:"includePattern"`
	// The location for the Repository.
	Location pulumi.StringOutput `pulumi:"location"`
	// The minimum number of approvals required for the branch rule to be matched.
	MinimumApprovalsCount pulumi.IntPtrOutput `pulumi:"minimumApprovalsCount"`
	// The minimum number of reviews required for the branch rule to be matched.
	MinimumReviewsCount pulumi.IntPtrOutput `pulumi:"minimumReviewsCount"`
	// The resource name for the BranchRule.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The ID for the Repository.
	//
	// ***
	RepositoryId pulumi.StringOutput `pulumi:"repositoryId"`
	// Determines if require comments resolved before merging to the branch.
	RequireCommentsResolved pulumi.BoolPtrOutput `pulumi:"requireCommentsResolved"`
	// Determines if require linear history before merging to the branch.
	RequireLinearHistory pulumi.BoolPtrOutput `pulumi:"requireLinearHistory"`
	// Determines if the branch rule requires a pull request or not.
	RequirePullRequest pulumi.BoolPtrOutput `pulumi:"requirePullRequest"`
	// Unique identifier of the BranchRule.
	Uid pulumi.StringOutput `pulumi:"uid"`
	// Time the BranchRule was updated in UTC.
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
}

BranchRule is the protection rule to enforce pre-defined rules on designated branches within a repository.

To get more information about BranchRule, see: * How-to Guides

## Example Usage

### Secure Source Manager Branch Rule Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		instance, err := securesourcemanager.NewInstance(ctx, "instance", &securesourcemanager.InstanceArgs{
			Location:   pulumi.String("us-central1"),
			InstanceId: pulumi.String("my-basic-instance"),
		})
		if err != nil {
			return err
		}
		repository, err := securesourcemanager.NewRepository(ctx, "repository", &securesourcemanager.RepositoryArgs{
			RepositoryId: pulumi.String("my-basic-repository"),
			Location:     instance.Location,
			Instance:     instance.Name,
		})
		if err != nil {
			return err
		}
		_, err = securesourcemanager.NewBranchRule(ctx, "basic", &securesourcemanager.BranchRuleArgs{
			BranchRuleId:   pulumi.String("my-basic-branchrule"),
			RepositoryId:   repository.RepositoryId,
			Location:       repository.Location,
			IncludePattern: pulumi.String("main"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Secure Source Manager Branch Rule With Fields

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		instance, err := securesourcemanager.NewInstance(ctx, "instance", &securesourcemanager.InstanceArgs{
			Location:   pulumi.String("us-central1"),
			InstanceId: pulumi.String("my-initial-instance"),
		})
		if err != nil {
			return err
		}
		repository, err := securesourcemanager.NewRepository(ctx, "repository", &securesourcemanager.RepositoryArgs{
			RepositoryId: pulumi.String("my-initial-repository"),
			Instance:     instance.Name,
			Location:     instance.Location,
		})
		if err != nil {
			return err
		}
		_, err = securesourcemanager.NewBranchRule(ctx, "default", &securesourcemanager.BranchRuleArgs{
			BranchRuleId:            pulumi.String("my-initial-branchrule"),
			Location:                repository.Location,
			RepositoryId:            repository.RepositoryId,
			IncludePattern:          pulumi.String("test"),
			MinimumApprovalsCount:   pulumi.Int(2),
			MinimumReviewsCount:     pulumi.Int(2),
			RequireCommentsResolved: pulumi.Bool(true),
			RequireLinearHistory:    pulumi.Bool(true),
			RequirePullRequest:      pulumi.Bool(true),
			Disabled:                pulumi.Bool(false),
			AllowStaleReviews:       pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

BranchRule can be imported using any of these accepted formats:

* `projects/{{project}}/locations/{{location}}/repositories/{{repository_id}}/branchRules/{{branch_rule_id}}`

* `{{project}}/{{location}}/{{repository_id}}/{{branch_rule_id}}`

* `{{location}}/{{repository_id}}/{{branch_rule_id}}`

* `{{branch_rule_id}}`

When using the `pulumi import` command, BranchRule can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:securesourcemanager/branchRule:BranchRule default projects/{{project}}/locations/{{location}}/repositories/{{repository_id}}/branchRules/{{branch_rule_id}} ```

```sh $ pulumi import gcp:securesourcemanager/branchRule:BranchRule default {{project}}/{{location}}/{{repository_id}}/{{branch_rule_id}} ```

```sh $ pulumi import gcp:securesourcemanager/branchRule:BranchRule default {{location}}/{{repository_id}}/{{branch_rule_id}} ```

```sh $ pulumi import gcp:securesourcemanager/branchRule:BranchRule default {{branch_rule_id}} ```

func GetBranchRule added in v8.6.0

func GetBranchRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BranchRuleState, opts ...pulumi.ResourceOption) (*BranchRule, error)

GetBranchRule gets an existing BranchRule 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 NewBranchRule added in v8.6.0

func NewBranchRule(ctx *pulumi.Context,
	name string, args *BranchRuleArgs, opts ...pulumi.ResourceOption) (*BranchRule, error)

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

func (*BranchRule) ElementType added in v8.6.0

func (*BranchRule) ElementType() reflect.Type

func (*BranchRule) ToBranchRuleOutput added in v8.6.0

func (i *BranchRule) ToBranchRuleOutput() BranchRuleOutput

func (*BranchRule) ToBranchRuleOutputWithContext added in v8.6.0

func (i *BranchRule) ToBranchRuleOutputWithContext(ctx context.Context) BranchRuleOutput

type BranchRuleArgs added in v8.6.0

type BranchRuleArgs struct {
	// Determines if allow stale reviews or approvals before merging to the branch.
	AllowStaleReviews pulumi.BoolPtrInput
	// The ID for the BranchRule.
	BranchRuleId pulumi.StringInput
	// Determines if the branch rule is disabled or not.
	Disabled pulumi.BoolPtrInput
	// The BranchRule matches branches based on the specified regular expression. Use .* to match all branches.
	IncludePattern pulumi.StringInput
	// The location for the Repository.
	Location pulumi.StringInput
	// The minimum number of approvals required for the branch rule to be matched.
	MinimumApprovalsCount pulumi.IntPtrInput
	// The minimum number of reviews required for the branch rule to be matched.
	MinimumReviewsCount pulumi.IntPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The ID for the Repository.
	//
	// ***
	RepositoryId pulumi.StringInput
	// Determines if require comments resolved before merging to the branch.
	RequireCommentsResolved pulumi.BoolPtrInput
	// Determines if require linear history before merging to the branch.
	RequireLinearHistory pulumi.BoolPtrInput
	// Determines if the branch rule requires a pull request or not.
	RequirePullRequest pulumi.BoolPtrInput
}

The set of arguments for constructing a BranchRule resource.

func (BranchRuleArgs) ElementType added in v8.6.0

func (BranchRuleArgs) ElementType() reflect.Type

type BranchRuleArray added in v8.6.0

type BranchRuleArray []BranchRuleInput

func (BranchRuleArray) ElementType added in v8.6.0

func (BranchRuleArray) ElementType() reflect.Type

func (BranchRuleArray) ToBranchRuleArrayOutput added in v8.6.0

func (i BranchRuleArray) ToBranchRuleArrayOutput() BranchRuleArrayOutput

func (BranchRuleArray) ToBranchRuleArrayOutputWithContext added in v8.6.0

func (i BranchRuleArray) ToBranchRuleArrayOutputWithContext(ctx context.Context) BranchRuleArrayOutput

type BranchRuleArrayInput added in v8.6.0

type BranchRuleArrayInput interface {
	pulumi.Input

	ToBranchRuleArrayOutput() BranchRuleArrayOutput
	ToBranchRuleArrayOutputWithContext(context.Context) BranchRuleArrayOutput
}

BranchRuleArrayInput is an input type that accepts BranchRuleArray and BranchRuleArrayOutput values. You can construct a concrete instance of `BranchRuleArrayInput` via:

BranchRuleArray{ BranchRuleArgs{...} }

type BranchRuleArrayOutput added in v8.6.0

type BranchRuleArrayOutput struct{ *pulumi.OutputState }

func (BranchRuleArrayOutput) ElementType added in v8.6.0

func (BranchRuleArrayOutput) ElementType() reflect.Type

func (BranchRuleArrayOutput) Index added in v8.6.0

func (BranchRuleArrayOutput) ToBranchRuleArrayOutput added in v8.6.0

func (o BranchRuleArrayOutput) ToBranchRuleArrayOutput() BranchRuleArrayOutput

func (BranchRuleArrayOutput) ToBranchRuleArrayOutputWithContext added in v8.6.0

func (o BranchRuleArrayOutput) ToBranchRuleArrayOutputWithContext(ctx context.Context) BranchRuleArrayOutput

type BranchRuleInput added in v8.6.0

type BranchRuleInput interface {
	pulumi.Input

	ToBranchRuleOutput() BranchRuleOutput
	ToBranchRuleOutputWithContext(ctx context.Context) BranchRuleOutput
}

type BranchRuleMap added in v8.6.0

type BranchRuleMap map[string]BranchRuleInput

func (BranchRuleMap) ElementType added in v8.6.0

func (BranchRuleMap) ElementType() reflect.Type

func (BranchRuleMap) ToBranchRuleMapOutput added in v8.6.0

func (i BranchRuleMap) ToBranchRuleMapOutput() BranchRuleMapOutput

func (BranchRuleMap) ToBranchRuleMapOutputWithContext added in v8.6.0

func (i BranchRuleMap) ToBranchRuleMapOutputWithContext(ctx context.Context) BranchRuleMapOutput

type BranchRuleMapInput added in v8.6.0

type BranchRuleMapInput interface {
	pulumi.Input

	ToBranchRuleMapOutput() BranchRuleMapOutput
	ToBranchRuleMapOutputWithContext(context.Context) BranchRuleMapOutput
}

BranchRuleMapInput is an input type that accepts BranchRuleMap and BranchRuleMapOutput values. You can construct a concrete instance of `BranchRuleMapInput` via:

BranchRuleMap{ "key": BranchRuleArgs{...} }

type BranchRuleMapOutput added in v8.6.0

type BranchRuleMapOutput struct{ *pulumi.OutputState }

func (BranchRuleMapOutput) ElementType added in v8.6.0

func (BranchRuleMapOutput) ElementType() reflect.Type

func (BranchRuleMapOutput) MapIndex added in v8.6.0

func (BranchRuleMapOutput) ToBranchRuleMapOutput added in v8.6.0

func (o BranchRuleMapOutput) ToBranchRuleMapOutput() BranchRuleMapOutput

func (BranchRuleMapOutput) ToBranchRuleMapOutputWithContext added in v8.6.0

func (o BranchRuleMapOutput) ToBranchRuleMapOutputWithContext(ctx context.Context) BranchRuleMapOutput

type BranchRuleOutput added in v8.6.0

type BranchRuleOutput struct{ *pulumi.OutputState }

func (BranchRuleOutput) AllowStaleReviews added in v8.6.0

func (o BranchRuleOutput) AllowStaleReviews() pulumi.BoolPtrOutput

Determines if allow stale reviews or approvals before merging to the branch.

func (BranchRuleOutput) BranchRuleId added in v8.6.0

func (o BranchRuleOutput) BranchRuleId() pulumi.StringOutput

The ID for the BranchRule.

func (BranchRuleOutput) CreateTime added in v8.6.0

func (o BranchRuleOutput) CreateTime() pulumi.StringOutput

Time the BranchRule was created in UTC.

func (BranchRuleOutput) Disabled added in v8.6.0

func (o BranchRuleOutput) Disabled() pulumi.BoolPtrOutput

Determines if the branch rule is disabled or not.

func (BranchRuleOutput) ElementType added in v8.6.0

func (BranchRuleOutput) ElementType() reflect.Type

func (BranchRuleOutput) IncludePattern added in v8.6.0

func (o BranchRuleOutput) IncludePattern() pulumi.StringOutput

The BranchRule matches branches based on the specified regular expression. Use .* to match all branches.

func (BranchRuleOutput) Location added in v8.6.0

func (o BranchRuleOutput) Location() pulumi.StringOutput

The location for the Repository.

func (BranchRuleOutput) MinimumApprovalsCount added in v8.6.0

func (o BranchRuleOutput) MinimumApprovalsCount() pulumi.IntPtrOutput

The minimum number of approvals required for the branch rule to be matched.

func (BranchRuleOutput) MinimumReviewsCount added in v8.6.0

func (o BranchRuleOutput) MinimumReviewsCount() pulumi.IntPtrOutput

The minimum number of reviews required for the branch rule to be matched.

func (BranchRuleOutput) Name added in v8.6.0

The resource name for the BranchRule.

func (BranchRuleOutput) Project added in v8.6.0

func (o BranchRuleOutput) Project() pulumi.StringOutput

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

func (BranchRuleOutput) RepositoryId added in v8.6.0

func (o BranchRuleOutput) RepositoryId() pulumi.StringOutput

The ID for the Repository.

***

func (BranchRuleOutput) RequireCommentsResolved added in v8.6.0

func (o BranchRuleOutput) RequireCommentsResolved() pulumi.BoolPtrOutput

Determines if require comments resolved before merging to the branch.

func (BranchRuleOutput) RequireLinearHistory added in v8.6.0

func (o BranchRuleOutput) RequireLinearHistory() pulumi.BoolPtrOutput

Determines if require linear history before merging to the branch.

func (BranchRuleOutput) RequirePullRequest added in v8.6.0

func (o BranchRuleOutput) RequirePullRequest() pulumi.BoolPtrOutput

Determines if the branch rule requires a pull request or not.

func (BranchRuleOutput) ToBranchRuleOutput added in v8.6.0

func (o BranchRuleOutput) ToBranchRuleOutput() BranchRuleOutput

func (BranchRuleOutput) ToBranchRuleOutputWithContext added in v8.6.0

func (o BranchRuleOutput) ToBranchRuleOutputWithContext(ctx context.Context) BranchRuleOutput

func (BranchRuleOutput) Uid added in v8.6.0

Unique identifier of the BranchRule.

func (BranchRuleOutput) UpdateTime added in v8.6.0

func (o BranchRuleOutput) UpdateTime() pulumi.StringOutput

Time the BranchRule was updated in UTC.

type BranchRuleState added in v8.6.0

type BranchRuleState struct {
	// Determines if allow stale reviews or approvals before merging to the branch.
	AllowStaleReviews pulumi.BoolPtrInput
	// The ID for the BranchRule.
	BranchRuleId pulumi.StringPtrInput
	// Time the BranchRule was created in UTC.
	CreateTime pulumi.StringPtrInput
	// Determines if the branch rule is disabled or not.
	Disabled pulumi.BoolPtrInput
	// The BranchRule matches branches based on the specified regular expression. Use .* to match all branches.
	IncludePattern pulumi.StringPtrInput
	// The location for the Repository.
	Location pulumi.StringPtrInput
	// The minimum number of approvals required for the branch rule to be matched.
	MinimumApprovalsCount pulumi.IntPtrInput
	// The minimum number of reviews required for the branch rule to be matched.
	MinimumReviewsCount pulumi.IntPtrInput
	// The resource name for the BranchRule.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The ID for the Repository.
	//
	// ***
	RepositoryId pulumi.StringPtrInput
	// Determines if require comments resolved before merging to the branch.
	RequireCommentsResolved pulumi.BoolPtrInput
	// Determines if require linear history before merging to the branch.
	RequireLinearHistory pulumi.BoolPtrInput
	// Determines if the branch rule requires a pull request or not.
	RequirePullRequest pulumi.BoolPtrInput
	// Unique identifier of the BranchRule.
	Uid pulumi.StringPtrInput
	// Time the BranchRule was updated in UTC.
	UpdateTime pulumi.StringPtrInput
}

func (BranchRuleState) ElementType added in v8.6.0

func (BranchRuleState) ElementType() reflect.Type

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// Time the Instance was created in UTC.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
	EffectiveLabels pulumi.StringMapOutput `pulumi:"effectiveLabels"`
	// A list of hostnames for this instance.
	// Structure is documented below.
	HostConfigs InstanceHostConfigArrayOutput `pulumi:"hostConfigs"`
	// The name for the Instance.
	//
	// ***
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// Customer-managed encryption key name, in the format projects/*/locations/*/keyRings/*/cryptoKeys/*.
	KmsKey pulumi.StringPtrOutput `pulumi:"kmsKey"`
	// Labels as key value pairs.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// The location for the Instance.
	Location pulumi.StringOutput `pulumi:"location"`
	// The resource name for the Instance.
	Name pulumi.StringOutput `pulumi:"name"`
	// Private settings for private instance.
	// Structure is documented below.
	PrivateConfig InstancePrivateConfigPtrOutput `pulumi:"privateConfig"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapOutput `pulumi:"pulumiLabels"`
	// The current state of the Instance.
	State pulumi.StringOutput `pulumi:"state"`
	// Provides information about the current instance state.
	StateNote pulumi.StringOutput `pulumi:"stateNote"`
	// Time the Instance was updated in UTC.
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
	// Configuration for Workforce Identity Federation to support third party identity provider.
	// If unset, defaults to the Google OIDC IdP.
	// Structure is documented below.
	WorkforceIdentityFederationConfig InstanceWorkforceIdentityFederationConfigPtrOutput `pulumi:"workforceIdentityFederationConfig"`
}

Instances are deployed to an available Google Cloud region and are accessible via their web interface.

To get more information about Instance, see:

* [API documentation](https://cloud.google.com/secure-source-manager/docs/reference/rest/v1/projects.locations.instances) * How-to Guides

## Example Usage

### Secure Source Manager Instance Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewInstance(ctx, "default", &securesourcemanager.InstanceArgs{
			Location:   pulumi.String("us-central1"),
			InstanceId: pulumi.String("my-instance"),
			Labels: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Secure Source Manager Instance Cmek

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/kms"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		keyRing, err := kms.NewKeyRing(ctx, "key_ring", &kms.KeyRingArgs{
			Name:     pulumi.String("my-keyring"),
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		cryptoKey, err := kms.NewCryptoKey(ctx, "crypto_key", &kms.CryptoKeyArgs{
			Name:    pulumi.String("my-key"),
			KeyRing: keyRing.ID(),
		})
		if err != nil {
			return err
		}
		project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
		if err != nil {
			return err
		}
		cryptoKeyBinding, err := kms.NewCryptoKeyIAMMember(ctx, "crypto_key_binding", &kms.CryptoKeyIAMMemberArgs{
			CryptoKeyId: cryptoKey.ID(),
			Role:        pulumi.String("roles/cloudkms.cryptoKeyEncrypterDecrypter"),
			Member:      pulumi.Sprintf("serviceAccount:service-%v@gcp-sa-sourcemanager.iam.gserviceaccount.com", project.Number),
		})
		if err != nil {
			return err
		}
		_, err = securesourcemanager.NewInstance(ctx, "default", &securesourcemanager.InstanceArgs{
			Location:   pulumi.String("us-central1"),
			InstanceId: pulumi.String("my-instance"),
			KmsKey:     cryptoKey.ID(),
		}, pulumi.DependsOn([]pulumi.Resource{
			cryptoKeyBinding,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Secure Source Manager Instance Private

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/certificateauthority"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi-time/sdk/go/time"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		caPool, err := certificateauthority.NewCaPool(ctx, "ca_pool", &certificateauthority.CaPoolArgs{
			Name:     pulumi.String("ca-pool"),
			Location: pulumi.String("us-central1"),
			Tier:     pulumi.String("ENTERPRISE"),
			PublishingOptions: &certificateauthority.CaPoolPublishingOptionsArgs{
				PublishCaCert: pulumi.Bool(true),
				PublishCrl:    pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		rootCa, err := certificateauthority.NewAuthority(ctx, "root_ca", &certificateauthority.AuthorityArgs{
			Pool:                   caPool.Name,
			CertificateAuthorityId: pulumi.String("root-ca"),
			Location:               pulumi.String("us-central1"),
			Config: &certificateauthority.AuthorityConfigArgs{
				SubjectConfig: &certificateauthority.AuthorityConfigSubjectConfigArgs{
					Subject: &certificateauthority.AuthorityConfigSubjectConfigSubjectArgs{
						Organization: pulumi.String("google"),
						CommonName:   pulumi.String("my-certificate-authority"),
					},
				},
				X509Config: &certificateauthority.AuthorityConfigX509ConfigArgs{
					CaOptions: &certificateauthority.AuthorityConfigX509ConfigCaOptionsArgs{
						IsCa: pulumi.Bool(true),
					},
					KeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageArgs{
						BaseKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs{
							CertSign: pulumi.Bool(true),
							CrlSign:  pulumi.Bool(true),
						},
						ExtendedKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs{
							ServerAuth: pulumi.Bool(true),
						},
					},
				},
			},
			KeySpec: &certificateauthority.AuthorityKeySpecArgs{
				Algorithm: pulumi.String("RSA_PKCS1_4096_SHA256"),
			},
			DeletionProtection:                 pulumi.Bool(false),
			IgnoreActiveCertificatesOnDeletion: pulumi.Bool(true),
			SkipGracePeriod:                    pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
		if err != nil {
			return err
		}
		caPoolBinding, err := certificateauthority.NewCaPoolIamBinding(ctx, "ca_pool_binding", &certificateauthority.CaPoolIamBindingArgs{
			CaPool: caPool.ID(),
			Role:   pulumi.String("roles/privateca.certificateRequester"),
			Members: pulumi.StringArray{
				pulumi.Sprintf("serviceAccount:service-%v@gcp-sa-sourcemanager.iam.gserviceaccount.com", project.Number),
			},
		})
		if err != nil {
			return err
		}
		// ca pool IAM permissions can take time to propagate
		wait120Seconds, err := time.NewSleep(ctx, "wait_120_seconds", &time.SleepArgs{
			CreateDuration: "120s",
		}, pulumi.DependsOn([]pulumi.Resource{
			caPoolBinding,
		}))
		if err != nil {
			return err
		}
		_, err = securesourcemanager.NewInstance(ctx, "default", &securesourcemanager.InstanceArgs{
			InstanceId: pulumi.String("my-instance"),
			Location:   pulumi.String("us-central1"),
			PrivateConfig: &securesourcemanager.InstancePrivateConfigArgs{
				IsPrivate: pulumi.Bool(true),
				CaPool:    caPool.ID(),
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			rootCa,
			wait120Seconds,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Secure Source Manager Instance Private Psc Backend

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/certificateauthority"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/dns"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi-time/sdk/go/time"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
		if err != nil {
			return err
		}
		caPool, err := certificateauthority.NewCaPool(ctx, "ca_pool", &certificateauthority.CaPoolArgs{
			Name:     pulumi.String("ca-pool"),
			Location: pulumi.String("us-central1"),
			Tier:     pulumi.String("ENTERPRISE"),
			PublishingOptions: &certificateauthority.CaPoolPublishingOptionsArgs{
				PublishCaCert: pulumi.Bool(true),
				PublishCrl:    pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		rootCa, err := certificateauthority.NewAuthority(ctx, "root_ca", &certificateauthority.AuthorityArgs{
			Pool:                   caPool.Name,
			CertificateAuthorityId: pulumi.String("root-ca"),
			Location:               pulumi.String("us-central1"),
			Config: &certificateauthority.AuthorityConfigArgs{
				SubjectConfig: &certificateauthority.AuthorityConfigSubjectConfigArgs{
					Subject: &certificateauthority.AuthorityConfigSubjectConfigSubjectArgs{
						Organization: pulumi.String("google"),
						CommonName:   pulumi.String("my-certificate-authority"),
					},
				},
				X509Config: &certificateauthority.AuthorityConfigX509ConfigArgs{
					CaOptions: &certificateauthority.AuthorityConfigX509ConfigCaOptionsArgs{
						IsCa: pulumi.Bool(true),
					},
					KeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageArgs{
						BaseKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs{
							CertSign: pulumi.Bool(true),
							CrlSign:  pulumi.Bool(true),
						},
						ExtendedKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs{
							ServerAuth: pulumi.Bool(true),
						},
					},
				},
			},
			KeySpec: &certificateauthority.AuthorityKeySpecArgs{
				Algorithm: pulumi.String("RSA_PKCS1_4096_SHA256"),
			},
			DeletionProtection:                 pulumi.Bool(false),
			IgnoreActiveCertificatesOnDeletion: pulumi.Bool(true),
			SkipGracePeriod:                    pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		caPoolBinding, err := certificateauthority.NewCaPoolIamBinding(ctx, "ca_pool_binding", &certificateauthority.CaPoolIamBindingArgs{
			CaPool: caPool.ID(),
			Role:   pulumi.String("roles/privateca.certificateRequester"),
			Members: pulumi.StringArray{
				pulumi.Sprintf("serviceAccount:service-%v@gcp-sa-sourcemanager.iam.gserviceaccount.com", project.Number),
			},
		})
		if err != nil {
			return err
		}
		// ca pool IAM permissions can take time to propagate
		wait120Seconds, err := time.NewSleep(ctx, "wait_120_seconds", &time.SleepArgs{
			CreateDuration: "120s",
		}, pulumi.DependsOn([]pulumi.Resource{
			caPoolBinding,
		}))
		if err != nil {
			return err
		}
		// See https://cloud.google.com/secure-source-manager/docs/create-private-service-connect-instance#root-ca-api
		_, err = securesourcemanager.NewInstance(ctx, "default", &securesourcemanager.InstanceArgs{
			InstanceId: pulumi.String("my-instance"),
			Location:   pulumi.String("us-central1"),
			PrivateConfig: &securesourcemanager.InstancePrivateConfigArgs{
				IsPrivate: pulumi.Bool(true),
				CaPool:    caPool.ID(),
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			rootCa,
			wait120Seconds,
		}))
		if err != nil {
			return err
		}
		// Connect SSM private instance with L4 proxy ILB.
		network, err := compute.NewNetwork(ctx, "network", &compute.NetworkArgs{
			Name:                  pulumi.String("my-network"),
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		subnet, err := compute.NewSubnetwork(ctx, "subnet", &compute.SubnetworkArgs{
			Name:                  pulumi.String("my-subnet"),
			Region:                pulumi.String("us-central1"),
			Network:               network.ID(),
			IpCidrRange:           pulumi.String("10.0.1.0/24"),
			PrivateIpGoogleAccess: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		pscNeg, err := compute.NewRegionNetworkEndpointGroup(ctx, "psc_neg", &compute.RegionNetworkEndpointGroupArgs{
			Name:                pulumi.String("my-neg"),
			Region:              pulumi.String("us-central1"),
			NetworkEndpointType: pulumi.String("PRIVATE_SERVICE_CONNECT"),
			PscTargetService: pulumi.String(_default.PrivateConfig.ApplyT(func(privateConfig securesourcemanager.InstancePrivateConfig) (*string, error) {
				return &privateConfig.HttpServiceAttachment, nil
			}).(pulumi.StringPtrOutput)),
			Network:    network.ID(),
			Subnetwork: subnet.ID(),
		})
		if err != nil {
			return err
		}
		backendService, err := compute.NewRegionBackendService(ctx, "backend_service", &compute.RegionBackendServiceArgs{
			Name:                pulumi.String("my-backend-service"),
			Region:              pulumi.String("us-central1"),
			Protocol:            pulumi.String("TCP"),
			LoadBalancingScheme: pulumi.String("INTERNAL_MANAGED"),
			Backends: compute.RegionBackendServiceBackendArray{
				&compute.RegionBackendServiceBackendArgs{
					Group:          pscNeg.ID(),
					BalancingMode:  pulumi.String("UTILIZATION"),
					CapacityScaler: pulumi.Float64(1),
				},
			},
		})
		if err != nil {
			return err
		}
		proxySubnet, err := compute.NewSubnetwork(ctx, "proxy_subnet", &compute.SubnetworkArgs{
			Name:        pulumi.String("my-proxy-subnet"),
			Region:      pulumi.String("us-central1"),
			Network:     network.ID(),
			IpCidrRange: pulumi.String("10.0.2.0/24"),
			Purpose:     pulumi.String("REGIONAL_MANAGED_PROXY"),
			Role:        pulumi.String("ACTIVE"),
		})
		if err != nil {
			return err
		}
		targetProxy, err := compute.NewRegionTargetTcpProxy(ctx, "target_proxy", &compute.RegionTargetTcpProxyArgs{
			Name:           pulumi.String("my-target-proxy"),
			Region:         pulumi.String("us-central1"),
			BackendService: backendService.ID(),
		})
		if err != nil {
			return err
		}
		fwRuleTargetProxy, err := compute.NewForwardingRule(ctx, "fw_rule_target_proxy", &compute.ForwardingRuleArgs{
			Name:                pulumi.String("fw-rule-target-proxy"),
			Region:              pulumi.String("us-central1"),
			LoadBalancingScheme: pulumi.String("INTERNAL_MANAGED"),
			IpProtocol:          pulumi.String("TCP"),
			PortRange:           pulumi.String("443"),
			Target:              targetProxy.ID(),
			Network:             network.ID(),
			Subnetwork:          subnet.ID(),
			NetworkTier:         pulumi.String("PREMIUM"),
		}, pulumi.DependsOn([]pulumi.Resource{
			proxySubnet,
		}))
		if err != nil {
			return err
		}
		privateZone, err := dns.NewManagedZone(ctx, "private_zone", &dns.ManagedZoneArgs{
			Name:       pulumi.String("my-dns-zone"),
			DnsName:    pulumi.String("p.sourcemanager.dev."),
			Visibility: pulumi.String("private"),
			PrivateVisibilityConfig: &dns.ManagedZonePrivateVisibilityConfigArgs{
				Networks: dns.ManagedZonePrivateVisibilityConfigNetworkArray{
					&dns.ManagedZonePrivateVisibilityConfigNetworkArgs{
						NetworkUrl: network.ID(),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "ssm_instance_html_record", &dns.RecordSetArgs{
			Name: _default.HostConfigs.ApplyT(func(hostConfigs []securesourcemanager.InstanceHostConfig) (string, error) {
				return fmt.Sprintf("%v.", hostConfigs[0].Html), nil
			}).(pulumi.StringOutput),
			Type:        pulumi.String("A"),
			Ttl:         pulumi.Int(300),
			ManagedZone: privateZone.Name,
			Rrdatas: pulumi.StringArray{
				fwRuleTargetProxy.IpAddress,
			},
		})
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "ssm_instance_api_record", &dns.RecordSetArgs{
			Name: _default.HostConfigs.ApplyT(func(hostConfigs []securesourcemanager.InstanceHostConfig) (string, error) {
				return fmt.Sprintf("%v.", hostConfigs[0].Api), nil
			}).(pulumi.StringOutput),
			Type:        pulumi.String("A"),
			Ttl:         pulumi.Int(300),
			ManagedZone: privateZone.Name,
			Rrdatas: pulumi.StringArray{
				fwRuleTargetProxy.IpAddress,
			},
		})
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "ssm_instance_git_record", &dns.RecordSetArgs{
			Name: _default.HostConfigs.ApplyT(func(hostConfigs []securesourcemanager.InstanceHostConfig) (string, error) {
				return fmt.Sprintf("%v.", hostConfigs[0].GitHttp), nil
			}).(pulumi.StringOutput),
			Type:        pulumi.String("A"),
			Ttl:         pulumi.Int(300),
			ManagedZone: privateZone.Name,
			Rrdatas: pulumi.StringArray{
				fwRuleTargetProxy.IpAddress,
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Secure Source Manager Instance Private Psc Endpoint

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/certificateauthority"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/dns"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi-time/sdk/go/time"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
		if err != nil {
			return err
		}
		caPool, err := certificateauthority.NewCaPool(ctx, "ca_pool", &certificateauthority.CaPoolArgs{
			Name:     pulumi.String("ca-pool"),
			Location: pulumi.String("us-central1"),
			Tier:     pulumi.String("ENTERPRISE"),
			PublishingOptions: &certificateauthority.CaPoolPublishingOptionsArgs{
				PublishCaCert: pulumi.Bool(true),
				PublishCrl:    pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		rootCa, err := certificateauthority.NewAuthority(ctx, "root_ca", &certificateauthority.AuthorityArgs{
			Pool:                   caPool.Name,
			CertificateAuthorityId: pulumi.String("root-ca"),
			Location:               pulumi.String("us-central1"),
			Config: &certificateauthority.AuthorityConfigArgs{
				SubjectConfig: &certificateauthority.AuthorityConfigSubjectConfigArgs{
					Subject: &certificateauthority.AuthorityConfigSubjectConfigSubjectArgs{
						Organization: pulumi.String("google"),
						CommonName:   pulumi.String("my-certificate-authority"),
					},
				},
				X509Config: &certificateauthority.AuthorityConfigX509ConfigArgs{
					CaOptions: &certificateauthority.AuthorityConfigX509ConfigCaOptionsArgs{
						IsCa: pulumi.Bool(true),
					},
					KeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageArgs{
						BaseKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageBaseKeyUsageArgs{
							CertSign: pulumi.Bool(true),
							CrlSign:  pulumi.Bool(true),
						},
						ExtendedKeyUsage: &certificateauthority.AuthorityConfigX509ConfigKeyUsageExtendedKeyUsageArgs{
							ServerAuth: pulumi.Bool(true),
						},
					},
				},
			},
			KeySpec: &certificateauthority.AuthorityKeySpecArgs{
				Algorithm: pulumi.String("RSA_PKCS1_4096_SHA256"),
			},
			DeletionProtection:                 pulumi.Bool(false),
			IgnoreActiveCertificatesOnDeletion: pulumi.Bool(true),
			SkipGracePeriod:                    pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		caPoolBinding, err := certificateauthority.NewCaPoolIamBinding(ctx, "ca_pool_binding", &certificateauthority.CaPoolIamBindingArgs{
			CaPool: caPool.ID(),
			Role:   pulumi.String("roles/privateca.certificateRequester"),
			Members: pulumi.StringArray{
				pulumi.Sprintf("serviceAccount:service-%v@gcp-sa-sourcemanager.iam.gserviceaccount.com", project.Number),
			},
		})
		if err != nil {
			return err
		}
		// ca pool IAM permissions can take time to propagate
		wait120Seconds, err := time.NewSleep(ctx, "wait_120_seconds", &time.SleepArgs{
			CreateDuration: "120s",
		}, pulumi.DependsOn([]pulumi.Resource{
			caPoolBinding,
		}))
		if err != nil {
			return err
		}
		// See https://cloud.google.com/secure-source-manager/docs/create-private-service-connect-instance#root-ca-api
		_, err = securesourcemanager.NewInstance(ctx, "default", &securesourcemanager.InstanceArgs{
			InstanceId: pulumi.String("my-instance"),
			Location:   pulumi.String("us-central1"),
			PrivateConfig: &securesourcemanager.InstancePrivateConfigArgs{
				IsPrivate: pulumi.Bool(true),
				CaPool:    caPool.ID(),
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			rootCa,
			wait120Seconds,
		}))
		if err != nil {
			return err
		}
		// Connect SSM private instance with endpoint.
		network, err := compute.NewNetwork(ctx, "network", &compute.NetworkArgs{
			Name:                  pulumi.String("my-network"),
			AutoCreateSubnetworks: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		subnet, err := compute.NewSubnetwork(ctx, "subnet", &compute.SubnetworkArgs{
			Name:                  pulumi.String("my-subnet"),
			Region:                pulumi.String("us-central1"),
			Network:               network.ID(),
			IpCidrRange:           pulumi.String("10.0.60.0/24"),
			PrivateIpGoogleAccess: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		address, err := compute.NewAddress(ctx, "address", &compute.AddressArgs{
			Name:        pulumi.String("my-address"),
			Region:      pulumi.String("us-central1"),
			Address:     pulumi.String("10.0.60.100"),
			AddressType: pulumi.String("INTERNAL"),
			Subnetwork:  subnet.ID(),
		})
		if err != nil {
			return err
		}
		fwRuleServiceAttachment, err := compute.NewForwardingRule(ctx, "fw_rule_service_attachment", &compute.ForwardingRuleArgs{
			Name:                pulumi.String("fw-rule-service-attachment"),
			Region:              pulumi.String("us-central1"),
			LoadBalancingScheme: pulumi.String(""),
			IpAddress:           address.ID(),
			Network:             network.ID(),
			Target: pulumi.String(_default.PrivateConfig.ApplyT(func(privateConfig securesourcemanager.InstancePrivateConfig) (*string, error) {
				return &privateConfig.HttpServiceAttachment, nil
			}).(pulumi.StringPtrOutput)),
		})
		if err != nil {
			return err
		}
		privateZone, err := dns.NewManagedZone(ctx, "private_zone", &dns.ManagedZoneArgs{
			Name:       pulumi.String("my-dns-zone"),
			DnsName:    pulumi.String("p.sourcemanager.dev."),
			Visibility: pulumi.String("private"),
			PrivateVisibilityConfig: &dns.ManagedZonePrivateVisibilityConfigArgs{
				Networks: dns.ManagedZonePrivateVisibilityConfigNetworkArray{
					&dns.ManagedZonePrivateVisibilityConfigNetworkArgs{
						NetworkUrl: network.ID(),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "ssm_instance_html_record", &dns.RecordSetArgs{
			Name: _default.HostConfigs.ApplyT(func(hostConfigs []securesourcemanager.InstanceHostConfig) (string, error) {
				return fmt.Sprintf("%v.", hostConfigs[0].Html), nil
			}).(pulumi.StringOutput),
			Type:        pulumi.String("A"),
			Ttl:         pulumi.Int(300),
			ManagedZone: privateZone.Name,
			Rrdatas: pulumi.StringArray{
				fwRuleServiceAttachment.IpAddress,
			},
		})
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "ssm_instance_api_record", &dns.RecordSetArgs{
			Name: _default.HostConfigs.ApplyT(func(hostConfigs []securesourcemanager.InstanceHostConfig) (string, error) {
				return fmt.Sprintf("%v.", hostConfigs[0].Api), nil
			}).(pulumi.StringOutput),
			Type:        pulumi.String("A"),
			Ttl:         pulumi.Int(300),
			ManagedZone: privateZone.Name,
			Rrdatas: pulumi.StringArray{
				fwRuleServiceAttachment.IpAddress,
			},
		})
		if err != nil {
			return err
		}
		_, err = dns.NewRecordSet(ctx, "ssm_instance_git_record", &dns.RecordSetArgs{
			Name: _default.HostConfigs.ApplyT(func(hostConfigs []securesourcemanager.InstanceHostConfig) (string, error) {
				return fmt.Sprintf("%v.", hostConfigs[0].GitHttp), nil
			}).(pulumi.StringOutput),
			Type:        pulumi.String("A"),
			Ttl:         pulumi.Int(300),
			ManagedZone: privateZone.Name,
			Rrdatas: pulumi.StringArray{
				fwRuleServiceAttachment.IpAddress,
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Secure Source Manager Instance Workforce Identity Federation

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewInstance(ctx, "default", &securesourcemanager.InstanceArgs{
			Location:   pulumi.String("us-central1"),
			InstanceId: pulumi.String("my-instance"),
			WorkforceIdentityFederationConfig: &securesourcemanager.InstanceWorkforceIdentityFederationConfigArgs{
				Enabled: pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Instance can be imported using any of these accepted formats:

* `projects/{{project}}/locations/{{location}}/instances/{{instance_id}}`

* `{{project}}/{{location}}/{{instance_id}}`

* `{{location}}/{{instance_id}}`

* `{{instance_id}}`

When using the `pulumi import` command, Instance can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:securesourcemanager/instance:Instance default projects/{{project}}/locations/{{location}}/instances/{{instance_id}} ```

```sh $ pulumi import gcp:securesourcemanager/instance:Instance default {{project}}/{{location}}/{{instance_id}} ```

```sh $ pulumi import gcp:securesourcemanager/instance:Instance default {{location}}/{{instance_id}} ```

```sh $ pulumi import gcp:securesourcemanager/instance:Instance default {{instance_id}} ```

func GetInstance

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)

GetInstance gets an existing Instance 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 NewInstance

func NewInstance(ctx *pulumi.Context,
	name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)

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

func (*Instance) ElementType

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext

func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

type InstanceArgs

type InstanceArgs struct {
	// The name for the Instance.
	//
	// ***
	InstanceId pulumi.StringInput
	// Customer-managed encryption key name, in the format projects/*/locations/*/keyRings/*/cryptoKeys/*.
	KmsKey pulumi.StringPtrInput
	// Labels as key value pairs.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// The location for the Instance.
	Location pulumi.StringInput
	// Private settings for private instance.
	// Structure is documented below.
	PrivateConfig InstancePrivateConfigPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Configuration for Workforce Identity Federation to support third party identity provider.
	// If unset, defaults to the Google OIDC IdP.
	// Structure is documented below.
	WorkforceIdentityFederationConfig InstanceWorkforceIdentityFederationConfigPtrInput
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray

type InstanceArray []InstanceInput

func (InstanceArray) ElementType

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext

func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceArrayInput

type InstanceArrayInput interface {
	pulumi.Input

	ToInstanceArrayOutput() InstanceArrayOutput
	ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
}

InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:

InstanceArray{ InstanceArgs{...} }

type InstanceArrayOutput

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index

func (InstanceArrayOutput) ToInstanceArrayOutput

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext

func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceHostConfig

type InstanceHostConfig struct {
	// (Output)
	// API hostname.
	Api *string `pulumi:"api"`
	// (Output)
	// Git HTTP hostname.
	GitHttp *string `pulumi:"gitHttp"`
	// (Output)
	// Git SSH hostname.
	GitSsh *string `pulumi:"gitSsh"`
	// (Output)
	// HTML hostname.
	Html *string `pulumi:"html"`
}

type InstanceHostConfigArgs

type InstanceHostConfigArgs struct {
	// (Output)
	// API hostname.
	Api pulumi.StringPtrInput `pulumi:"api"`
	// (Output)
	// Git HTTP hostname.
	GitHttp pulumi.StringPtrInput `pulumi:"gitHttp"`
	// (Output)
	// Git SSH hostname.
	GitSsh pulumi.StringPtrInput `pulumi:"gitSsh"`
	// (Output)
	// HTML hostname.
	Html pulumi.StringPtrInput `pulumi:"html"`
}

func (InstanceHostConfigArgs) ElementType

func (InstanceHostConfigArgs) ElementType() reflect.Type

func (InstanceHostConfigArgs) ToInstanceHostConfigOutput

func (i InstanceHostConfigArgs) ToInstanceHostConfigOutput() InstanceHostConfigOutput

func (InstanceHostConfigArgs) ToInstanceHostConfigOutputWithContext

func (i InstanceHostConfigArgs) ToInstanceHostConfigOutputWithContext(ctx context.Context) InstanceHostConfigOutput

type InstanceHostConfigArray

type InstanceHostConfigArray []InstanceHostConfigInput

func (InstanceHostConfigArray) ElementType

func (InstanceHostConfigArray) ElementType() reflect.Type

func (InstanceHostConfigArray) ToInstanceHostConfigArrayOutput

func (i InstanceHostConfigArray) ToInstanceHostConfigArrayOutput() InstanceHostConfigArrayOutput

func (InstanceHostConfigArray) ToInstanceHostConfigArrayOutputWithContext

func (i InstanceHostConfigArray) ToInstanceHostConfigArrayOutputWithContext(ctx context.Context) InstanceHostConfigArrayOutput

type InstanceHostConfigArrayInput

type InstanceHostConfigArrayInput interface {
	pulumi.Input

	ToInstanceHostConfigArrayOutput() InstanceHostConfigArrayOutput
	ToInstanceHostConfigArrayOutputWithContext(context.Context) InstanceHostConfigArrayOutput
}

InstanceHostConfigArrayInput is an input type that accepts InstanceHostConfigArray and InstanceHostConfigArrayOutput values. You can construct a concrete instance of `InstanceHostConfigArrayInput` via:

InstanceHostConfigArray{ InstanceHostConfigArgs{...} }

type InstanceHostConfigArrayOutput

type InstanceHostConfigArrayOutput struct{ *pulumi.OutputState }

func (InstanceHostConfigArrayOutput) ElementType

func (InstanceHostConfigArrayOutput) Index

func (InstanceHostConfigArrayOutput) ToInstanceHostConfigArrayOutput

func (o InstanceHostConfigArrayOutput) ToInstanceHostConfigArrayOutput() InstanceHostConfigArrayOutput

func (InstanceHostConfigArrayOutput) ToInstanceHostConfigArrayOutputWithContext

func (o InstanceHostConfigArrayOutput) ToInstanceHostConfigArrayOutputWithContext(ctx context.Context) InstanceHostConfigArrayOutput

type InstanceHostConfigInput

type InstanceHostConfigInput interface {
	pulumi.Input

	ToInstanceHostConfigOutput() InstanceHostConfigOutput
	ToInstanceHostConfigOutputWithContext(context.Context) InstanceHostConfigOutput
}

InstanceHostConfigInput is an input type that accepts InstanceHostConfigArgs and InstanceHostConfigOutput values. You can construct a concrete instance of `InstanceHostConfigInput` via:

InstanceHostConfigArgs{...}

type InstanceHostConfigOutput

type InstanceHostConfigOutput struct{ *pulumi.OutputState }

func (InstanceHostConfigOutput) Api

(Output) API hostname.

func (InstanceHostConfigOutput) ElementType

func (InstanceHostConfigOutput) ElementType() reflect.Type

func (InstanceHostConfigOutput) GitHttp

(Output) Git HTTP hostname.

func (InstanceHostConfigOutput) GitSsh

(Output) Git SSH hostname.

func (InstanceHostConfigOutput) Html

(Output) HTML hostname.

func (InstanceHostConfigOutput) ToInstanceHostConfigOutput

func (o InstanceHostConfigOutput) ToInstanceHostConfigOutput() InstanceHostConfigOutput

func (InstanceHostConfigOutput) ToInstanceHostConfigOutputWithContext

func (o InstanceHostConfigOutput) ToInstanceHostConfigOutputWithContext(ctx context.Context) InstanceHostConfigOutput

type InstanceIamBinding

type InstanceIamBinding struct {
	pulumi.CustomResourceState

	Condition  InstanceIamBindingConditionPtrOutput `pulumi:"condition"`
	Etag       pulumi.StringOutput                  `pulumi:"etag"`
	InstanceId pulumi.StringOutput                  `pulumi:"instanceId"`
	Location   pulumi.StringOutput                  `pulumi:"location"`
	Members    pulumi.StringArrayOutput             `pulumi:"members"`
	Project    pulumi.StringOutput                  `pulumi:"project"`
	Role       pulumi.StringOutput                  `pulumi:"role"`
}

func GetInstanceIamBinding

func GetInstanceIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceIamBindingState, opts ...pulumi.ResourceOption) (*InstanceIamBinding, error)

GetInstanceIamBinding gets an existing InstanceIamBinding 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 NewInstanceIamBinding

func NewInstanceIamBinding(ctx *pulumi.Context,
	name string, args *InstanceIamBindingArgs, opts ...pulumi.ResourceOption) (*InstanceIamBinding, error)

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

func (*InstanceIamBinding) ElementType

func (*InstanceIamBinding) ElementType() reflect.Type

func (*InstanceIamBinding) ToInstanceIamBindingOutput

func (i *InstanceIamBinding) ToInstanceIamBindingOutput() InstanceIamBindingOutput

func (*InstanceIamBinding) ToInstanceIamBindingOutputWithContext

func (i *InstanceIamBinding) ToInstanceIamBindingOutputWithContext(ctx context.Context) InstanceIamBindingOutput

type InstanceIamBindingArgs

type InstanceIamBindingArgs struct {
	Condition  InstanceIamBindingConditionPtrInput
	InstanceId pulumi.StringInput
	Location   pulumi.StringPtrInput
	Members    pulumi.StringArrayInput
	Project    pulumi.StringPtrInput
	Role       pulumi.StringInput
}

The set of arguments for constructing a InstanceIamBinding resource.

func (InstanceIamBindingArgs) ElementType

func (InstanceIamBindingArgs) ElementType() reflect.Type

type InstanceIamBindingArray

type InstanceIamBindingArray []InstanceIamBindingInput

func (InstanceIamBindingArray) ElementType

func (InstanceIamBindingArray) ElementType() reflect.Type

func (InstanceIamBindingArray) ToInstanceIamBindingArrayOutput

func (i InstanceIamBindingArray) ToInstanceIamBindingArrayOutput() InstanceIamBindingArrayOutput

func (InstanceIamBindingArray) ToInstanceIamBindingArrayOutputWithContext

func (i InstanceIamBindingArray) ToInstanceIamBindingArrayOutputWithContext(ctx context.Context) InstanceIamBindingArrayOutput

type InstanceIamBindingArrayInput

type InstanceIamBindingArrayInput interface {
	pulumi.Input

	ToInstanceIamBindingArrayOutput() InstanceIamBindingArrayOutput
	ToInstanceIamBindingArrayOutputWithContext(context.Context) InstanceIamBindingArrayOutput
}

InstanceIamBindingArrayInput is an input type that accepts InstanceIamBindingArray and InstanceIamBindingArrayOutput values. You can construct a concrete instance of `InstanceIamBindingArrayInput` via:

InstanceIamBindingArray{ InstanceIamBindingArgs{...} }

type InstanceIamBindingArrayOutput

type InstanceIamBindingArrayOutput struct{ *pulumi.OutputState }

func (InstanceIamBindingArrayOutput) ElementType

func (InstanceIamBindingArrayOutput) Index

func (InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutput

func (o InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutput() InstanceIamBindingArrayOutput

func (InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutputWithContext

func (o InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutputWithContext(ctx context.Context) InstanceIamBindingArrayOutput

type InstanceIamBindingCondition

type InstanceIamBindingCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type InstanceIamBindingConditionArgs

type InstanceIamBindingConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (InstanceIamBindingConditionArgs) ElementType

func (InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutput

func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutput() InstanceIamBindingConditionOutput

func (InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutputWithContext

func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutputWithContext(ctx context.Context) InstanceIamBindingConditionOutput

func (InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutput

func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput

func (InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutputWithContext

func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIamBindingConditionPtrOutput

type InstanceIamBindingConditionInput

type InstanceIamBindingConditionInput interface {
	pulumi.Input

	ToInstanceIamBindingConditionOutput() InstanceIamBindingConditionOutput
	ToInstanceIamBindingConditionOutputWithContext(context.Context) InstanceIamBindingConditionOutput
}

InstanceIamBindingConditionInput is an input type that accepts InstanceIamBindingConditionArgs and InstanceIamBindingConditionOutput values. You can construct a concrete instance of `InstanceIamBindingConditionInput` via:

InstanceIamBindingConditionArgs{...}

type InstanceIamBindingConditionOutput

type InstanceIamBindingConditionOutput struct{ *pulumi.OutputState }

func (InstanceIamBindingConditionOutput) Description

func (InstanceIamBindingConditionOutput) ElementType

func (InstanceIamBindingConditionOutput) Expression

func (InstanceIamBindingConditionOutput) Title

func (InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutput

func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutput() InstanceIamBindingConditionOutput

func (InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutputWithContext

func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutputWithContext(ctx context.Context) InstanceIamBindingConditionOutput

func (InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutput

func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput

func (InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutputWithContext

func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIamBindingConditionPtrOutput

type InstanceIamBindingConditionPtrInput

type InstanceIamBindingConditionPtrInput interface {
	pulumi.Input

	ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput
	ToInstanceIamBindingConditionPtrOutputWithContext(context.Context) InstanceIamBindingConditionPtrOutput
}

InstanceIamBindingConditionPtrInput is an input type that accepts InstanceIamBindingConditionArgs, InstanceIamBindingConditionPtr and InstanceIamBindingConditionPtrOutput values. You can construct a concrete instance of `InstanceIamBindingConditionPtrInput` via:

        InstanceIamBindingConditionArgs{...}

or:

        nil

type InstanceIamBindingConditionPtrOutput

type InstanceIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (InstanceIamBindingConditionPtrOutput) Description

func (InstanceIamBindingConditionPtrOutput) Elem

func (InstanceIamBindingConditionPtrOutput) ElementType

func (InstanceIamBindingConditionPtrOutput) Expression

func (InstanceIamBindingConditionPtrOutput) Title

func (InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutput

func (o InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput

func (InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutputWithContext

func (o InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIamBindingConditionPtrOutput

type InstanceIamBindingInput

type InstanceIamBindingInput interface {
	pulumi.Input

	ToInstanceIamBindingOutput() InstanceIamBindingOutput
	ToInstanceIamBindingOutputWithContext(ctx context.Context) InstanceIamBindingOutput
}

type InstanceIamBindingMap

type InstanceIamBindingMap map[string]InstanceIamBindingInput

func (InstanceIamBindingMap) ElementType

func (InstanceIamBindingMap) ElementType() reflect.Type

func (InstanceIamBindingMap) ToInstanceIamBindingMapOutput

func (i InstanceIamBindingMap) ToInstanceIamBindingMapOutput() InstanceIamBindingMapOutput

func (InstanceIamBindingMap) ToInstanceIamBindingMapOutputWithContext

func (i InstanceIamBindingMap) ToInstanceIamBindingMapOutputWithContext(ctx context.Context) InstanceIamBindingMapOutput

type InstanceIamBindingMapInput

type InstanceIamBindingMapInput interface {
	pulumi.Input

	ToInstanceIamBindingMapOutput() InstanceIamBindingMapOutput
	ToInstanceIamBindingMapOutputWithContext(context.Context) InstanceIamBindingMapOutput
}

InstanceIamBindingMapInput is an input type that accepts InstanceIamBindingMap and InstanceIamBindingMapOutput values. You can construct a concrete instance of `InstanceIamBindingMapInput` via:

InstanceIamBindingMap{ "key": InstanceIamBindingArgs{...} }

type InstanceIamBindingMapOutput

type InstanceIamBindingMapOutput struct{ *pulumi.OutputState }

func (InstanceIamBindingMapOutput) ElementType

func (InstanceIamBindingMapOutput) MapIndex

func (InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutput

func (o InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutput() InstanceIamBindingMapOutput

func (InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutputWithContext

func (o InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutputWithContext(ctx context.Context) InstanceIamBindingMapOutput

type InstanceIamBindingOutput

type InstanceIamBindingOutput struct{ *pulumi.OutputState }

func (InstanceIamBindingOutput) Condition

func (InstanceIamBindingOutput) ElementType

func (InstanceIamBindingOutput) ElementType() reflect.Type

func (InstanceIamBindingOutput) Etag

func (InstanceIamBindingOutput) InstanceId

func (InstanceIamBindingOutput) Location

func (InstanceIamBindingOutput) Members

func (InstanceIamBindingOutput) Project

func (InstanceIamBindingOutput) Role

func (InstanceIamBindingOutput) ToInstanceIamBindingOutput

func (o InstanceIamBindingOutput) ToInstanceIamBindingOutput() InstanceIamBindingOutput

func (InstanceIamBindingOutput) ToInstanceIamBindingOutputWithContext

func (o InstanceIamBindingOutput) ToInstanceIamBindingOutputWithContext(ctx context.Context) InstanceIamBindingOutput

type InstanceIamBindingState

type InstanceIamBindingState struct {
	Condition  InstanceIamBindingConditionPtrInput
	Etag       pulumi.StringPtrInput
	InstanceId pulumi.StringPtrInput
	Location   pulumi.StringPtrInput
	Members    pulumi.StringArrayInput
	Project    pulumi.StringPtrInput
	Role       pulumi.StringPtrInput
}

func (InstanceIamBindingState) ElementType

func (InstanceIamBindingState) ElementType() reflect.Type

type InstanceIamMember

type InstanceIamMember struct {
	pulumi.CustomResourceState

	Condition  InstanceIamMemberConditionPtrOutput `pulumi:"condition"`
	Etag       pulumi.StringOutput                 `pulumi:"etag"`
	InstanceId pulumi.StringOutput                 `pulumi:"instanceId"`
	Location   pulumi.StringOutput                 `pulumi:"location"`
	Member     pulumi.StringOutput                 `pulumi:"member"`
	Project    pulumi.StringOutput                 `pulumi:"project"`
	Role       pulumi.StringOutput                 `pulumi:"role"`
}

func GetInstanceIamMember

func GetInstanceIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceIamMemberState, opts ...pulumi.ResourceOption) (*InstanceIamMember, error)

GetInstanceIamMember gets an existing InstanceIamMember 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 NewInstanceIamMember

func NewInstanceIamMember(ctx *pulumi.Context,
	name string, args *InstanceIamMemberArgs, opts ...pulumi.ResourceOption) (*InstanceIamMember, error)

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

func (*InstanceIamMember) ElementType

func (*InstanceIamMember) ElementType() reflect.Type

func (*InstanceIamMember) ToInstanceIamMemberOutput

func (i *InstanceIamMember) ToInstanceIamMemberOutput() InstanceIamMemberOutput

func (*InstanceIamMember) ToInstanceIamMemberOutputWithContext

func (i *InstanceIamMember) ToInstanceIamMemberOutputWithContext(ctx context.Context) InstanceIamMemberOutput

type InstanceIamMemberArgs

type InstanceIamMemberArgs struct {
	Condition  InstanceIamMemberConditionPtrInput
	InstanceId pulumi.StringInput
	Location   pulumi.StringPtrInput
	Member     pulumi.StringInput
	Project    pulumi.StringPtrInput
	Role       pulumi.StringInput
}

The set of arguments for constructing a InstanceIamMember resource.

func (InstanceIamMemberArgs) ElementType

func (InstanceIamMemberArgs) ElementType() reflect.Type

type InstanceIamMemberArray

type InstanceIamMemberArray []InstanceIamMemberInput

func (InstanceIamMemberArray) ElementType

func (InstanceIamMemberArray) ElementType() reflect.Type

func (InstanceIamMemberArray) ToInstanceIamMemberArrayOutput

func (i InstanceIamMemberArray) ToInstanceIamMemberArrayOutput() InstanceIamMemberArrayOutput

func (InstanceIamMemberArray) ToInstanceIamMemberArrayOutputWithContext

func (i InstanceIamMemberArray) ToInstanceIamMemberArrayOutputWithContext(ctx context.Context) InstanceIamMemberArrayOutput

type InstanceIamMemberArrayInput

type InstanceIamMemberArrayInput interface {
	pulumi.Input

	ToInstanceIamMemberArrayOutput() InstanceIamMemberArrayOutput
	ToInstanceIamMemberArrayOutputWithContext(context.Context) InstanceIamMemberArrayOutput
}

InstanceIamMemberArrayInput is an input type that accepts InstanceIamMemberArray and InstanceIamMemberArrayOutput values. You can construct a concrete instance of `InstanceIamMemberArrayInput` via:

InstanceIamMemberArray{ InstanceIamMemberArgs{...} }

type InstanceIamMemberArrayOutput

type InstanceIamMemberArrayOutput struct{ *pulumi.OutputState }

func (InstanceIamMemberArrayOutput) ElementType

func (InstanceIamMemberArrayOutput) Index

func (InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutput

func (o InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutput() InstanceIamMemberArrayOutput

func (InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutputWithContext

func (o InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutputWithContext(ctx context.Context) InstanceIamMemberArrayOutput

type InstanceIamMemberCondition

type InstanceIamMemberCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type InstanceIamMemberConditionArgs

type InstanceIamMemberConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (InstanceIamMemberConditionArgs) ElementType

func (InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutput

func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutput() InstanceIamMemberConditionOutput

func (InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutputWithContext

func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutputWithContext(ctx context.Context) InstanceIamMemberConditionOutput

func (InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutput

func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput

func (InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutputWithContext

func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIamMemberConditionPtrOutput

type InstanceIamMemberConditionInput

type InstanceIamMemberConditionInput interface {
	pulumi.Input

	ToInstanceIamMemberConditionOutput() InstanceIamMemberConditionOutput
	ToInstanceIamMemberConditionOutputWithContext(context.Context) InstanceIamMemberConditionOutput
}

InstanceIamMemberConditionInput is an input type that accepts InstanceIamMemberConditionArgs and InstanceIamMemberConditionOutput values. You can construct a concrete instance of `InstanceIamMemberConditionInput` via:

InstanceIamMemberConditionArgs{...}

type InstanceIamMemberConditionOutput

type InstanceIamMemberConditionOutput struct{ *pulumi.OutputState }

func (InstanceIamMemberConditionOutput) Description

func (InstanceIamMemberConditionOutput) ElementType

func (InstanceIamMemberConditionOutput) Expression

func (InstanceIamMemberConditionOutput) Title

func (InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutput

func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutput() InstanceIamMemberConditionOutput

func (InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutputWithContext

func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutputWithContext(ctx context.Context) InstanceIamMemberConditionOutput

func (InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutput

func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput

func (InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutputWithContext

func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIamMemberConditionPtrOutput

type InstanceIamMemberConditionPtrInput

type InstanceIamMemberConditionPtrInput interface {
	pulumi.Input

	ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput
	ToInstanceIamMemberConditionPtrOutputWithContext(context.Context) InstanceIamMemberConditionPtrOutput
}

InstanceIamMemberConditionPtrInput is an input type that accepts InstanceIamMemberConditionArgs, InstanceIamMemberConditionPtr and InstanceIamMemberConditionPtrOutput values. You can construct a concrete instance of `InstanceIamMemberConditionPtrInput` via:

        InstanceIamMemberConditionArgs{...}

or:

        nil

type InstanceIamMemberConditionPtrOutput

type InstanceIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (InstanceIamMemberConditionPtrOutput) Description

func (InstanceIamMemberConditionPtrOutput) Elem

func (InstanceIamMemberConditionPtrOutput) ElementType

func (InstanceIamMemberConditionPtrOutput) Expression

func (InstanceIamMemberConditionPtrOutput) Title

func (InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutput

func (o InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput

func (InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutputWithContext

func (o InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIamMemberConditionPtrOutput

type InstanceIamMemberInput

type InstanceIamMemberInput interface {
	pulumi.Input

	ToInstanceIamMemberOutput() InstanceIamMemberOutput
	ToInstanceIamMemberOutputWithContext(ctx context.Context) InstanceIamMemberOutput
}

type InstanceIamMemberMap

type InstanceIamMemberMap map[string]InstanceIamMemberInput

func (InstanceIamMemberMap) ElementType

func (InstanceIamMemberMap) ElementType() reflect.Type

func (InstanceIamMemberMap) ToInstanceIamMemberMapOutput

func (i InstanceIamMemberMap) ToInstanceIamMemberMapOutput() InstanceIamMemberMapOutput

func (InstanceIamMemberMap) ToInstanceIamMemberMapOutputWithContext

func (i InstanceIamMemberMap) ToInstanceIamMemberMapOutputWithContext(ctx context.Context) InstanceIamMemberMapOutput

type InstanceIamMemberMapInput

type InstanceIamMemberMapInput interface {
	pulumi.Input

	ToInstanceIamMemberMapOutput() InstanceIamMemberMapOutput
	ToInstanceIamMemberMapOutputWithContext(context.Context) InstanceIamMemberMapOutput
}

InstanceIamMemberMapInput is an input type that accepts InstanceIamMemberMap and InstanceIamMemberMapOutput values. You can construct a concrete instance of `InstanceIamMemberMapInput` via:

InstanceIamMemberMap{ "key": InstanceIamMemberArgs{...} }

type InstanceIamMemberMapOutput

type InstanceIamMemberMapOutput struct{ *pulumi.OutputState }

func (InstanceIamMemberMapOutput) ElementType

func (InstanceIamMemberMapOutput) ElementType() reflect.Type

func (InstanceIamMemberMapOutput) MapIndex

func (InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutput

func (o InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutput() InstanceIamMemberMapOutput

func (InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutputWithContext

func (o InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutputWithContext(ctx context.Context) InstanceIamMemberMapOutput

type InstanceIamMemberOutput

type InstanceIamMemberOutput struct{ *pulumi.OutputState }

func (InstanceIamMemberOutput) Condition

func (InstanceIamMemberOutput) ElementType

func (InstanceIamMemberOutput) ElementType() reflect.Type

func (InstanceIamMemberOutput) Etag

func (InstanceIamMemberOutput) InstanceId

func (InstanceIamMemberOutput) Location

func (InstanceIamMemberOutput) Member

func (InstanceIamMemberOutput) Project

func (InstanceIamMemberOutput) Role

func (InstanceIamMemberOutput) ToInstanceIamMemberOutput

func (o InstanceIamMemberOutput) ToInstanceIamMemberOutput() InstanceIamMemberOutput

func (InstanceIamMemberOutput) ToInstanceIamMemberOutputWithContext

func (o InstanceIamMemberOutput) ToInstanceIamMemberOutputWithContext(ctx context.Context) InstanceIamMemberOutput

type InstanceIamMemberState

type InstanceIamMemberState struct {
	Condition  InstanceIamMemberConditionPtrInput
	Etag       pulumi.StringPtrInput
	InstanceId pulumi.StringPtrInput
	Location   pulumi.StringPtrInput
	Member     pulumi.StringPtrInput
	Project    pulumi.StringPtrInput
	Role       pulumi.StringPtrInput
}

func (InstanceIamMemberState) ElementType

func (InstanceIamMemberState) ElementType() reflect.Type

type InstanceIamPolicy

type InstanceIamPolicy struct {
	pulumi.CustomResourceState

	Etag       pulumi.StringOutput `pulumi:"etag"`
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	Location   pulumi.StringOutput `pulumi:"location"`
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
	Project    pulumi.StringOutput `pulumi:"project"`
}

func GetInstanceIamPolicy

func GetInstanceIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceIamPolicyState, opts ...pulumi.ResourceOption) (*InstanceIamPolicy, error)

GetInstanceIamPolicy gets an existing InstanceIamPolicy 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 NewInstanceIamPolicy

func NewInstanceIamPolicy(ctx *pulumi.Context,
	name string, args *InstanceIamPolicyArgs, opts ...pulumi.ResourceOption) (*InstanceIamPolicy, error)

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

func (*InstanceIamPolicy) ElementType

func (*InstanceIamPolicy) ElementType() reflect.Type

func (*InstanceIamPolicy) ToInstanceIamPolicyOutput

func (i *InstanceIamPolicy) ToInstanceIamPolicyOutput() InstanceIamPolicyOutput

func (*InstanceIamPolicy) ToInstanceIamPolicyOutputWithContext

func (i *InstanceIamPolicy) ToInstanceIamPolicyOutputWithContext(ctx context.Context) InstanceIamPolicyOutput

type InstanceIamPolicyArgs

type InstanceIamPolicyArgs struct {
	InstanceId pulumi.StringInput
	Location   pulumi.StringPtrInput
	PolicyData pulumi.StringInput
	Project    pulumi.StringPtrInput
}

The set of arguments for constructing a InstanceIamPolicy resource.

func (InstanceIamPolicyArgs) ElementType

func (InstanceIamPolicyArgs) ElementType() reflect.Type

type InstanceIamPolicyArray

type InstanceIamPolicyArray []InstanceIamPolicyInput

func (InstanceIamPolicyArray) ElementType

func (InstanceIamPolicyArray) ElementType() reflect.Type

func (InstanceIamPolicyArray) ToInstanceIamPolicyArrayOutput

func (i InstanceIamPolicyArray) ToInstanceIamPolicyArrayOutput() InstanceIamPolicyArrayOutput

func (InstanceIamPolicyArray) ToInstanceIamPolicyArrayOutputWithContext

func (i InstanceIamPolicyArray) ToInstanceIamPolicyArrayOutputWithContext(ctx context.Context) InstanceIamPolicyArrayOutput

type InstanceIamPolicyArrayInput

type InstanceIamPolicyArrayInput interface {
	pulumi.Input

	ToInstanceIamPolicyArrayOutput() InstanceIamPolicyArrayOutput
	ToInstanceIamPolicyArrayOutputWithContext(context.Context) InstanceIamPolicyArrayOutput
}

InstanceIamPolicyArrayInput is an input type that accepts InstanceIamPolicyArray and InstanceIamPolicyArrayOutput values. You can construct a concrete instance of `InstanceIamPolicyArrayInput` via:

InstanceIamPolicyArray{ InstanceIamPolicyArgs{...} }

type InstanceIamPolicyArrayOutput

type InstanceIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (InstanceIamPolicyArrayOutput) ElementType

func (InstanceIamPolicyArrayOutput) Index

func (InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutput

func (o InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutput() InstanceIamPolicyArrayOutput

func (InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutputWithContext

func (o InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutputWithContext(ctx context.Context) InstanceIamPolicyArrayOutput

type InstanceIamPolicyInput

type InstanceIamPolicyInput interface {
	pulumi.Input

	ToInstanceIamPolicyOutput() InstanceIamPolicyOutput
	ToInstanceIamPolicyOutputWithContext(ctx context.Context) InstanceIamPolicyOutput
}

type InstanceIamPolicyMap

type InstanceIamPolicyMap map[string]InstanceIamPolicyInput

func (InstanceIamPolicyMap) ElementType

func (InstanceIamPolicyMap) ElementType() reflect.Type

func (InstanceIamPolicyMap) ToInstanceIamPolicyMapOutput

func (i InstanceIamPolicyMap) ToInstanceIamPolicyMapOutput() InstanceIamPolicyMapOutput

func (InstanceIamPolicyMap) ToInstanceIamPolicyMapOutputWithContext

func (i InstanceIamPolicyMap) ToInstanceIamPolicyMapOutputWithContext(ctx context.Context) InstanceIamPolicyMapOutput

type InstanceIamPolicyMapInput

type InstanceIamPolicyMapInput interface {
	pulumi.Input

	ToInstanceIamPolicyMapOutput() InstanceIamPolicyMapOutput
	ToInstanceIamPolicyMapOutputWithContext(context.Context) InstanceIamPolicyMapOutput
}

InstanceIamPolicyMapInput is an input type that accepts InstanceIamPolicyMap and InstanceIamPolicyMapOutput values. You can construct a concrete instance of `InstanceIamPolicyMapInput` via:

InstanceIamPolicyMap{ "key": InstanceIamPolicyArgs{...} }

type InstanceIamPolicyMapOutput

type InstanceIamPolicyMapOutput struct{ *pulumi.OutputState }

func (InstanceIamPolicyMapOutput) ElementType

func (InstanceIamPolicyMapOutput) ElementType() reflect.Type

func (InstanceIamPolicyMapOutput) MapIndex

func (InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutput

func (o InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutput() InstanceIamPolicyMapOutput

func (InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutputWithContext

func (o InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutputWithContext(ctx context.Context) InstanceIamPolicyMapOutput

type InstanceIamPolicyOutput

type InstanceIamPolicyOutput struct{ *pulumi.OutputState }

func (InstanceIamPolicyOutput) ElementType

func (InstanceIamPolicyOutput) ElementType() reflect.Type

func (InstanceIamPolicyOutput) Etag

func (InstanceIamPolicyOutput) InstanceId

func (InstanceIamPolicyOutput) Location

func (InstanceIamPolicyOutput) PolicyData

func (InstanceIamPolicyOutput) Project

func (InstanceIamPolicyOutput) ToInstanceIamPolicyOutput

func (o InstanceIamPolicyOutput) ToInstanceIamPolicyOutput() InstanceIamPolicyOutput

func (InstanceIamPolicyOutput) ToInstanceIamPolicyOutputWithContext

func (o InstanceIamPolicyOutput) ToInstanceIamPolicyOutputWithContext(ctx context.Context) InstanceIamPolicyOutput

type InstanceIamPolicyState

type InstanceIamPolicyState struct {
	Etag       pulumi.StringPtrInput
	InstanceId pulumi.StringPtrInput
	Location   pulumi.StringPtrInput
	PolicyData pulumi.StringPtrInput
	Project    pulumi.StringPtrInput
}

func (InstanceIamPolicyState) ElementType

func (InstanceIamPolicyState) ElementType() reflect.Type

type InstanceInput

type InstanceInput interface {
	pulumi.Input

	ToInstanceOutput() InstanceOutput
	ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
}

type InstanceMap

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext

func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceMapInput

type InstanceMapInput interface {
	pulumi.Input

	ToInstanceMapOutput() InstanceMapOutput
	ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
}

InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:

InstanceMap{ "key": InstanceArgs{...} }

type InstanceMapOutput

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex

func (InstanceMapOutput) ToInstanceMapOutput

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext

func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceOutput

type InstanceOutput struct{ *pulumi.OutputState }

func (InstanceOutput) CreateTime

func (o InstanceOutput) CreateTime() pulumi.StringOutput

Time the Instance was created in UTC.

func (InstanceOutput) EffectiveLabels

func (o InstanceOutput) EffectiveLabels() pulumi.StringMapOutput

All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) HostConfigs

A list of hostnames for this instance. Structure is documented below.

func (InstanceOutput) InstanceId

func (o InstanceOutput) InstanceId() pulumi.StringOutput

The name for the Instance.

***

func (InstanceOutput) KmsKey

Customer-managed encryption key name, in the format projects/*/locations/*/keyRings/*/cryptoKeys/*.

func (InstanceOutput) Labels

Labels as key value pairs.

**Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field `effectiveLabels` for all of the labels present on the resource.

func (InstanceOutput) Location

func (o InstanceOutput) Location() pulumi.StringOutput

The location for the Instance.

func (InstanceOutput) Name

The resource name for the Instance.

func (InstanceOutput) PrivateConfig

Private settings for private instance. Structure is documented below.

func (InstanceOutput) Project

func (o InstanceOutput) Project() pulumi.StringOutput

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

func (InstanceOutput) PulumiLabels

func (o InstanceOutput) PulumiLabels() pulumi.StringMapOutput

The combination of labels configured directly on the resource and default labels configured on the provider.

func (InstanceOutput) State

The current state of the Instance.

func (InstanceOutput) StateNote

func (o InstanceOutput) StateNote() pulumi.StringOutput

Provides information about the current instance state.

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (InstanceOutput) UpdateTime

func (o InstanceOutput) UpdateTime() pulumi.StringOutput

Time the Instance was updated in UTC.

func (InstanceOutput) WorkforceIdentityFederationConfig added in v8.10.0

func (o InstanceOutput) WorkforceIdentityFederationConfig() InstanceWorkforceIdentityFederationConfigPtrOutput

Configuration for Workforce Identity Federation to support third party identity provider. If unset, defaults to the Google OIDC IdP. Structure is documented below.

type InstancePrivateConfig

type InstancePrivateConfig struct {
	// CA pool resource, resource must in the format of `projects/{project}/locations/{location}/caPools/{ca_pool}`.
	CaPool string `pulumi:"caPool"`
	// (Output)
	// Service Attachment for HTTP, resource is in the format of `projects/{project}/regions/{region}/serviceAttachments/{service_attachment}`.
	HttpServiceAttachment *string `pulumi:"httpServiceAttachment"`
	// 'Indicate if it's private instance.'
	IsPrivate bool `pulumi:"isPrivate"`
	// (Output)
	// Service Attachment for SSH, resource is in the format of `projects/{project}/regions/{region}/serviceAttachments/{service_attachment}`.
	SshServiceAttachment *string `pulumi:"sshServiceAttachment"`
}

type InstancePrivateConfigArgs

type InstancePrivateConfigArgs struct {
	// CA pool resource, resource must in the format of `projects/{project}/locations/{location}/caPools/{ca_pool}`.
	CaPool pulumi.StringInput `pulumi:"caPool"`
	// (Output)
	// Service Attachment for HTTP, resource is in the format of `projects/{project}/regions/{region}/serviceAttachments/{service_attachment}`.
	HttpServiceAttachment pulumi.StringPtrInput `pulumi:"httpServiceAttachment"`
	// 'Indicate if it's private instance.'
	IsPrivate pulumi.BoolInput `pulumi:"isPrivate"`
	// (Output)
	// Service Attachment for SSH, resource is in the format of `projects/{project}/regions/{region}/serviceAttachments/{service_attachment}`.
	SshServiceAttachment pulumi.StringPtrInput `pulumi:"sshServiceAttachment"`
}

func (InstancePrivateConfigArgs) ElementType

func (InstancePrivateConfigArgs) ElementType() reflect.Type

func (InstancePrivateConfigArgs) ToInstancePrivateConfigOutput

func (i InstancePrivateConfigArgs) ToInstancePrivateConfigOutput() InstancePrivateConfigOutput

func (InstancePrivateConfigArgs) ToInstancePrivateConfigOutputWithContext

func (i InstancePrivateConfigArgs) ToInstancePrivateConfigOutputWithContext(ctx context.Context) InstancePrivateConfigOutput

func (InstancePrivateConfigArgs) ToInstancePrivateConfigPtrOutput

func (i InstancePrivateConfigArgs) ToInstancePrivateConfigPtrOutput() InstancePrivateConfigPtrOutput

func (InstancePrivateConfigArgs) ToInstancePrivateConfigPtrOutputWithContext

func (i InstancePrivateConfigArgs) ToInstancePrivateConfigPtrOutputWithContext(ctx context.Context) InstancePrivateConfigPtrOutput

type InstancePrivateConfigInput

type InstancePrivateConfigInput interface {
	pulumi.Input

	ToInstancePrivateConfigOutput() InstancePrivateConfigOutput
	ToInstancePrivateConfigOutputWithContext(context.Context) InstancePrivateConfigOutput
}

InstancePrivateConfigInput is an input type that accepts InstancePrivateConfigArgs and InstancePrivateConfigOutput values. You can construct a concrete instance of `InstancePrivateConfigInput` via:

InstancePrivateConfigArgs{...}

type InstancePrivateConfigOutput

type InstancePrivateConfigOutput struct{ *pulumi.OutputState }

func (InstancePrivateConfigOutput) CaPool

CA pool resource, resource must in the format of `projects/{project}/locations/{location}/caPools/{ca_pool}`.

func (InstancePrivateConfigOutput) ElementType

func (InstancePrivateConfigOutput) HttpServiceAttachment

func (o InstancePrivateConfigOutput) HttpServiceAttachment() pulumi.StringPtrOutput

(Output) Service Attachment for HTTP, resource is in the format of `projects/{project}/regions/{region}/serviceAttachments/{service_attachment}`.

func (InstancePrivateConfigOutput) IsPrivate

'Indicate if it's private instance.'

func (InstancePrivateConfigOutput) SshServiceAttachment

func (o InstancePrivateConfigOutput) SshServiceAttachment() pulumi.StringPtrOutput

(Output) Service Attachment for SSH, resource is in the format of `projects/{project}/regions/{region}/serviceAttachments/{service_attachment}`.

func (InstancePrivateConfigOutput) ToInstancePrivateConfigOutput

func (o InstancePrivateConfigOutput) ToInstancePrivateConfigOutput() InstancePrivateConfigOutput

func (InstancePrivateConfigOutput) ToInstancePrivateConfigOutputWithContext

func (o InstancePrivateConfigOutput) ToInstancePrivateConfigOutputWithContext(ctx context.Context) InstancePrivateConfigOutput

func (InstancePrivateConfigOutput) ToInstancePrivateConfigPtrOutput

func (o InstancePrivateConfigOutput) ToInstancePrivateConfigPtrOutput() InstancePrivateConfigPtrOutput

func (InstancePrivateConfigOutput) ToInstancePrivateConfigPtrOutputWithContext

func (o InstancePrivateConfigOutput) ToInstancePrivateConfigPtrOutputWithContext(ctx context.Context) InstancePrivateConfigPtrOutput

type InstancePrivateConfigPtrInput

type InstancePrivateConfigPtrInput interface {
	pulumi.Input

	ToInstancePrivateConfigPtrOutput() InstancePrivateConfigPtrOutput
	ToInstancePrivateConfigPtrOutputWithContext(context.Context) InstancePrivateConfigPtrOutput
}

InstancePrivateConfigPtrInput is an input type that accepts InstancePrivateConfigArgs, InstancePrivateConfigPtr and InstancePrivateConfigPtrOutput values. You can construct a concrete instance of `InstancePrivateConfigPtrInput` via:

        InstancePrivateConfigArgs{...}

or:

        nil

type InstancePrivateConfigPtrOutput

type InstancePrivateConfigPtrOutput struct{ *pulumi.OutputState }

func (InstancePrivateConfigPtrOutput) CaPool

CA pool resource, resource must in the format of `projects/{project}/locations/{location}/caPools/{ca_pool}`.

func (InstancePrivateConfigPtrOutput) Elem

func (InstancePrivateConfigPtrOutput) ElementType

func (InstancePrivateConfigPtrOutput) HttpServiceAttachment

func (o InstancePrivateConfigPtrOutput) HttpServiceAttachment() pulumi.StringPtrOutput

(Output) Service Attachment for HTTP, resource is in the format of `projects/{project}/regions/{region}/serviceAttachments/{service_attachment}`.

func (InstancePrivateConfigPtrOutput) IsPrivate

'Indicate if it's private instance.'

func (InstancePrivateConfigPtrOutput) SshServiceAttachment

func (o InstancePrivateConfigPtrOutput) SshServiceAttachment() pulumi.StringPtrOutput

(Output) Service Attachment for SSH, resource is in the format of `projects/{project}/regions/{region}/serviceAttachments/{service_attachment}`.

func (InstancePrivateConfigPtrOutput) ToInstancePrivateConfigPtrOutput

func (o InstancePrivateConfigPtrOutput) ToInstancePrivateConfigPtrOutput() InstancePrivateConfigPtrOutput

func (InstancePrivateConfigPtrOutput) ToInstancePrivateConfigPtrOutputWithContext

func (o InstancePrivateConfigPtrOutput) ToInstancePrivateConfigPtrOutputWithContext(ctx context.Context) InstancePrivateConfigPtrOutput

type InstanceState

type InstanceState struct {
	// Time the Instance was created in UTC.
	CreateTime pulumi.StringPtrInput
	// All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
	EffectiveLabels pulumi.StringMapInput
	// A list of hostnames for this instance.
	// Structure is documented below.
	HostConfigs InstanceHostConfigArrayInput
	// The name for the Instance.
	//
	// ***
	InstanceId pulumi.StringPtrInput
	// Customer-managed encryption key name, in the format projects/*/locations/*/keyRings/*/cryptoKeys/*.
	KmsKey pulumi.StringPtrInput
	// Labels as key value pairs.
	//
	// **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
	// Please refer to the field `effectiveLabels` for all of the labels present on the resource.
	Labels pulumi.StringMapInput
	// The location for the Instance.
	Location pulumi.StringPtrInput
	// The resource name for the Instance.
	Name pulumi.StringPtrInput
	// Private settings for private instance.
	// Structure is documented below.
	PrivateConfig InstancePrivateConfigPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	PulumiLabels pulumi.StringMapInput
	// The current state of the Instance.
	State pulumi.StringPtrInput
	// Provides information about the current instance state.
	StateNote pulumi.StringPtrInput
	// Time the Instance was updated in UTC.
	UpdateTime pulumi.StringPtrInput
	// Configuration for Workforce Identity Federation to support third party identity provider.
	// If unset, defaults to the Google OIDC IdP.
	// Structure is documented below.
	WorkforceIdentityFederationConfig InstanceWorkforceIdentityFederationConfigPtrInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type InstanceWorkforceIdentityFederationConfig added in v8.10.0

type InstanceWorkforceIdentityFederationConfig struct {
	// 'Whether Workforce Identity Federation is enabled.'
	Enabled bool `pulumi:"enabled"`
}

type InstanceWorkforceIdentityFederationConfigArgs added in v8.10.0

type InstanceWorkforceIdentityFederationConfigArgs struct {
	// 'Whether Workforce Identity Federation is enabled.'
	Enabled pulumi.BoolInput `pulumi:"enabled"`
}

func (InstanceWorkforceIdentityFederationConfigArgs) ElementType added in v8.10.0

func (InstanceWorkforceIdentityFederationConfigArgs) ToInstanceWorkforceIdentityFederationConfigOutput added in v8.10.0

func (i InstanceWorkforceIdentityFederationConfigArgs) ToInstanceWorkforceIdentityFederationConfigOutput() InstanceWorkforceIdentityFederationConfigOutput

func (InstanceWorkforceIdentityFederationConfigArgs) ToInstanceWorkforceIdentityFederationConfigOutputWithContext added in v8.10.0

func (i InstanceWorkforceIdentityFederationConfigArgs) ToInstanceWorkforceIdentityFederationConfigOutputWithContext(ctx context.Context) InstanceWorkforceIdentityFederationConfigOutput

func (InstanceWorkforceIdentityFederationConfigArgs) ToInstanceWorkforceIdentityFederationConfigPtrOutput added in v8.10.0

func (i InstanceWorkforceIdentityFederationConfigArgs) ToInstanceWorkforceIdentityFederationConfigPtrOutput() InstanceWorkforceIdentityFederationConfigPtrOutput

func (InstanceWorkforceIdentityFederationConfigArgs) ToInstanceWorkforceIdentityFederationConfigPtrOutputWithContext added in v8.10.0

func (i InstanceWorkforceIdentityFederationConfigArgs) ToInstanceWorkforceIdentityFederationConfigPtrOutputWithContext(ctx context.Context) InstanceWorkforceIdentityFederationConfigPtrOutput

type InstanceWorkforceIdentityFederationConfigInput added in v8.10.0

type InstanceWorkforceIdentityFederationConfigInput interface {
	pulumi.Input

	ToInstanceWorkforceIdentityFederationConfigOutput() InstanceWorkforceIdentityFederationConfigOutput
	ToInstanceWorkforceIdentityFederationConfigOutputWithContext(context.Context) InstanceWorkforceIdentityFederationConfigOutput
}

InstanceWorkforceIdentityFederationConfigInput is an input type that accepts InstanceWorkforceIdentityFederationConfigArgs and InstanceWorkforceIdentityFederationConfigOutput values. You can construct a concrete instance of `InstanceWorkforceIdentityFederationConfigInput` via:

InstanceWorkforceIdentityFederationConfigArgs{...}

type InstanceWorkforceIdentityFederationConfigOutput added in v8.10.0

type InstanceWorkforceIdentityFederationConfigOutput struct{ *pulumi.OutputState }

func (InstanceWorkforceIdentityFederationConfigOutput) ElementType added in v8.10.0

func (InstanceWorkforceIdentityFederationConfigOutput) Enabled added in v8.10.0

'Whether Workforce Identity Federation is enabled.'

func (InstanceWorkforceIdentityFederationConfigOutput) ToInstanceWorkforceIdentityFederationConfigOutput added in v8.10.0

func (o InstanceWorkforceIdentityFederationConfigOutput) ToInstanceWorkforceIdentityFederationConfigOutput() InstanceWorkforceIdentityFederationConfigOutput

func (InstanceWorkforceIdentityFederationConfigOutput) ToInstanceWorkforceIdentityFederationConfigOutputWithContext added in v8.10.0

func (o InstanceWorkforceIdentityFederationConfigOutput) ToInstanceWorkforceIdentityFederationConfigOutputWithContext(ctx context.Context) InstanceWorkforceIdentityFederationConfigOutput

func (InstanceWorkforceIdentityFederationConfigOutput) ToInstanceWorkforceIdentityFederationConfigPtrOutput added in v8.10.0

func (o InstanceWorkforceIdentityFederationConfigOutput) ToInstanceWorkforceIdentityFederationConfigPtrOutput() InstanceWorkforceIdentityFederationConfigPtrOutput

func (InstanceWorkforceIdentityFederationConfigOutput) ToInstanceWorkforceIdentityFederationConfigPtrOutputWithContext added in v8.10.0

func (o InstanceWorkforceIdentityFederationConfigOutput) ToInstanceWorkforceIdentityFederationConfigPtrOutputWithContext(ctx context.Context) InstanceWorkforceIdentityFederationConfigPtrOutput

type InstanceWorkforceIdentityFederationConfigPtrInput added in v8.10.0

type InstanceWorkforceIdentityFederationConfigPtrInput interface {
	pulumi.Input

	ToInstanceWorkforceIdentityFederationConfigPtrOutput() InstanceWorkforceIdentityFederationConfigPtrOutput
	ToInstanceWorkforceIdentityFederationConfigPtrOutputWithContext(context.Context) InstanceWorkforceIdentityFederationConfigPtrOutput
}

InstanceWorkforceIdentityFederationConfigPtrInput is an input type that accepts InstanceWorkforceIdentityFederationConfigArgs, InstanceWorkforceIdentityFederationConfigPtr and InstanceWorkforceIdentityFederationConfigPtrOutput values. You can construct a concrete instance of `InstanceWorkforceIdentityFederationConfigPtrInput` via:

        InstanceWorkforceIdentityFederationConfigArgs{...}

or:

        nil

type InstanceWorkforceIdentityFederationConfigPtrOutput added in v8.10.0

type InstanceWorkforceIdentityFederationConfigPtrOutput struct{ *pulumi.OutputState }

func (InstanceWorkforceIdentityFederationConfigPtrOutput) Elem added in v8.10.0

func (InstanceWorkforceIdentityFederationConfigPtrOutput) ElementType added in v8.10.0

func (InstanceWorkforceIdentityFederationConfigPtrOutput) Enabled added in v8.10.0

'Whether Workforce Identity Federation is enabled.'

func (InstanceWorkforceIdentityFederationConfigPtrOutput) ToInstanceWorkforceIdentityFederationConfigPtrOutput added in v8.10.0

func (o InstanceWorkforceIdentityFederationConfigPtrOutput) ToInstanceWorkforceIdentityFederationConfigPtrOutput() InstanceWorkforceIdentityFederationConfigPtrOutput

func (InstanceWorkforceIdentityFederationConfigPtrOutput) ToInstanceWorkforceIdentityFederationConfigPtrOutputWithContext added in v8.10.0

func (o InstanceWorkforceIdentityFederationConfigPtrOutput) ToInstanceWorkforceIdentityFederationConfigPtrOutputWithContext(ctx context.Context) InstanceWorkforceIdentityFederationConfigPtrOutput

type LookupInstanceIamPolicyArgs

type LookupInstanceIamPolicyArgs struct {
	// The name for the Instance.
	// Used to find the parent resource to bind the IAM policy to
	InstanceId string `pulumi:"instanceId"`
	// The location for the Instance.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location *string `pulumi:"location"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project *string `pulumi:"project"`
}

A collection of arguments for invoking getInstanceIamPolicy.

type LookupInstanceIamPolicyOutputArgs

type LookupInstanceIamPolicyOutputArgs struct {
	// The name for the Instance.
	// Used to find the parent resource to bind the IAM policy to
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The location for the Instance.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location pulumi.StringPtrInput `pulumi:"location"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput `pulumi:"project"`
}

A collection of arguments for invoking getInstanceIamPolicy.

func (LookupInstanceIamPolicyOutputArgs) ElementType

type LookupInstanceIamPolicyResult

type LookupInstanceIamPolicyResult struct {
	// (Computed) The etag of the IAM policy.
	Etag string `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id         string `pulumi:"id"`
	InstanceId string `pulumi:"instanceId"`
	Location   string `pulumi:"location"`
	// (Required only by `securesourcemanager.InstanceIamPolicy`) The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData string `pulumi:"policyData"`
	Project    string `pulumi:"project"`
}

A collection of values returned by getInstanceIamPolicy.

func LookupInstanceIamPolicy

func LookupInstanceIamPolicy(ctx *pulumi.Context, args *LookupInstanceIamPolicyArgs, opts ...pulumi.InvokeOption) (*LookupInstanceIamPolicyResult, error)

Retrieves the current IAM policy data for instance

## example

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.LookupInstanceIamPolicy(ctx, &securesourcemanager.LookupInstanceIamPolicyArgs{
			Project:    pulumi.StringRef(_default.Project),
			Location:   pulumi.StringRef(_default.Location),
			InstanceId: _default.InstanceId,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupInstanceIamPolicyResultOutput

type LookupInstanceIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstanceIamPolicy.

func (LookupInstanceIamPolicyResultOutput) ElementType

func (LookupInstanceIamPolicyResultOutput) Etag

(Computed) The etag of the IAM policy.

func (LookupInstanceIamPolicyResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupInstanceIamPolicyResultOutput) InstanceId

func (LookupInstanceIamPolicyResultOutput) Location

func (LookupInstanceIamPolicyResultOutput) PolicyData

(Required only by `securesourcemanager.InstanceIamPolicy`) The policy data generated by a `organizations.getIAMPolicy` data source.

func (LookupInstanceIamPolicyResultOutput) Project

func (LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutput

func (o LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutput() LookupInstanceIamPolicyResultOutput

func (LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutputWithContext

func (o LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutputWithContext(ctx context.Context) LookupInstanceIamPolicyResultOutput

type LookupRepositoryIamPolicyArgs

type LookupRepositoryIamPolicyArgs struct {
	// The location for the Repository.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location *string `pulumi:"location"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project *string `pulumi:"project"`
	// The ID for the Repository.
	// Used to find the parent resource to bind the IAM policy to
	RepositoryId string `pulumi:"repositoryId"`
}

A collection of arguments for invoking getRepositoryIamPolicy.

type LookupRepositoryIamPolicyOutputArgs

type LookupRepositoryIamPolicyOutputArgs struct {
	// The location for the Repository.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location pulumi.StringPtrInput `pulumi:"location"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput `pulumi:"project"`
	// The ID for the Repository.
	// Used to find the parent resource to bind the IAM policy to
	RepositoryId pulumi.StringInput `pulumi:"repositoryId"`
}

A collection of arguments for invoking getRepositoryIamPolicy.

func (LookupRepositoryIamPolicyOutputArgs) ElementType

type LookupRepositoryIamPolicyResult

type LookupRepositoryIamPolicyResult struct {
	// (Computed) The etag of the IAM policy.
	Etag string `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id       string `pulumi:"id"`
	Location string `pulumi:"location"`
	// (Required only by `securesourcemanager.RepositoryIamPolicy`) The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData   string `pulumi:"policyData"`
	Project      string `pulumi:"project"`
	RepositoryId string `pulumi:"repositoryId"`
}

A collection of values returned by getRepositoryIamPolicy.

func LookupRepositoryIamPolicy

func LookupRepositoryIamPolicy(ctx *pulumi.Context, args *LookupRepositoryIamPolicyArgs, opts ...pulumi.InvokeOption) (*LookupRepositoryIamPolicyResult, error)

Retrieves the current IAM policy data for repository

## example

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.LookupRepositoryIamPolicy(ctx, &securesourcemanager.LookupRepositoryIamPolicyArgs{
			Project:      pulumi.StringRef(_default.Project),
			Location:     pulumi.StringRef(_default.Location),
			RepositoryId: _default.RepositoryId,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupRepositoryIamPolicyResultOutput

type LookupRepositoryIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getRepositoryIamPolicy.

func (LookupRepositoryIamPolicyResultOutput) ElementType

func (LookupRepositoryIamPolicyResultOutput) Etag

(Computed) The etag of the IAM policy.

func (LookupRepositoryIamPolicyResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupRepositoryIamPolicyResultOutput) Location

func (LookupRepositoryIamPolicyResultOutput) PolicyData

(Required only by `securesourcemanager.RepositoryIamPolicy`) The policy data generated by a `organizations.getIAMPolicy` data source.

func (LookupRepositoryIamPolicyResultOutput) Project

func (LookupRepositoryIamPolicyResultOutput) RepositoryId

func (LookupRepositoryIamPolicyResultOutput) ToLookupRepositoryIamPolicyResultOutput

func (o LookupRepositoryIamPolicyResultOutput) ToLookupRepositoryIamPolicyResultOutput() LookupRepositoryIamPolicyResultOutput

func (LookupRepositoryIamPolicyResultOutput) ToLookupRepositoryIamPolicyResultOutputWithContext

func (o LookupRepositoryIamPolicyResultOutput) ToLookupRepositoryIamPolicyResultOutputWithContext(ctx context.Context) LookupRepositoryIamPolicyResultOutput

type Repository

type Repository struct {
	pulumi.CustomResourceState

	// Time the repository was created in UTC.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Description of the repository, which cannot exceed 500 characters.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Initial configurations for the repository.
	// Structure is documented below.
	InitialConfig RepositoryInitialConfigPtrOutput `pulumi:"initialConfig"`
	// The name of the instance in which the repository is hosted.
	Instance pulumi.StringOutput `pulumi:"instance"`
	// The location for the Repository.
	Location pulumi.StringOutput `pulumi:"location"`
	// The resource name for the Repository.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The ID for the Repository.
	//
	// ***
	RepositoryId pulumi.StringOutput `pulumi:"repositoryId"`
	// Unique identifier of the repository.
	Uid pulumi.StringOutput `pulumi:"uid"`
	// Time the repository was updated in UTC.
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
	// URIs for the repository.
	// Structure is documented below.
	Uris RepositoryUriArrayOutput `pulumi:"uris"`
}

Repositories store source code. It supports all Git SCM client commands and has built-in pull requests and issue tracking. Both HTTPS and SSH authentication are supported.

To get more information about Repository, see: * How-to Guides

## Example Usage

### Secure Source Manager Repository Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		instance, err := securesourcemanager.NewInstance(ctx, "instance", &securesourcemanager.InstanceArgs{
			Location:   pulumi.String("us-central1"),
			InstanceId: pulumi.String("my-instance"),
		})
		if err != nil {
			return err
		}
		_, err = securesourcemanager.NewRepository(ctx, "default", &securesourcemanager.RepositoryArgs{
			Location:     pulumi.String("us-central1"),
			RepositoryId: pulumi.String("my-repository"),
			Instance:     instance.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Secure Source Manager Repository Initial Config

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		instance, err := securesourcemanager.NewInstance(ctx, "instance", &securesourcemanager.InstanceArgs{
			Location:   pulumi.String("us-central1"),
			InstanceId: pulumi.String("my-instance"),
		})
		if err != nil {
			return err
		}
		_, err = securesourcemanager.NewRepository(ctx, "default", &securesourcemanager.RepositoryArgs{
			Location:     pulumi.String("us-central1"),
			RepositoryId: pulumi.String("my-repository"),
			Instance:     instance.Name,
			Description:  pulumi.String("This is a test repository"),
			InitialConfig: &securesourcemanager.RepositoryInitialConfigArgs{
				DefaultBranch: pulumi.String("main"),
				Gitignores: pulumi.StringArray{
					pulumi.String("python"),
				},
				License: pulumi.String("mit"),
				Readme:  pulumi.String("default"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Repository can be imported using any of these accepted formats:

* `projects/{{project}}/locations/{{location}}/repositories/{{repository_id}}`

* `{{project}}/{{location}}/{{repository_id}}`

* `{{location}}/{{repository_id}}`

* `{{repository_id}}`

When using the `pulumi import` command, Repository can be imported using one of the formats above. For example:

```sh $ pulumi import gcp:securesourcemanager/repository:Repository default projects/{{project}}/locations/{{location}}/repositories/{{repository_id}} ```

```sh $ pulumi import gcp:securesourcemanager/repository:Repository default {{project}}/{{location}}/{{repository_id}} ```

```sh $ pulumi import gcp:securesourcemanager/repository:Repository default {{location}}/{{repository_id}} ```

```sh $ pulumi import gcp:securesourcemanager/repository:Repository default {{repository_id}} ```

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.

func (*Repository) ElementType

func (*Repository) ElementType() reflect.Type

func (*Repository) ToRepositoryOutput

func (i *Repository) ToRepositoryOutput() RepositoryOutput

func (*Repository) ToRepositoryOutputWithContext

func (i *Repository) ToRepositoryOutputWithContext(ctx context.Context) RepositoryOutput

type RepositoryArgs

type RepositoryArgs struct {
	// Description of the repository, which cannot exceed 500 characters.
	Description pulumi.StringPtrInput
	// Initial configurations for the repository.
	// Structure is documented below.
	InitialConfig RepositoryInitialConfigPtrInput
	// The name of the instance in which the repository is hosted.
	Instance pulumi.StringInput
	// The location for the Repository.
	Location pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The ID for the Repository.
	//
	// ***
	RepositoryId pulumi.StringInput
}

The set of arguments for constructing a Repository resource.

func (RepositoryArgs) ElementType

func (RepositoryArgs) ElementType() reflect.Type

type RepositoryArray

type RepositoryArray []RepositoryInput

func (RepositoryArray) ElementType

func (RepositoryArray) ElementType() reflect.Type

func (RepositoryArray) ToRepositoryArrayOutput

func (i RepositoryArray) ToRepositoryArrayOutput() RepositoryArrayOutput

func (RepositoryArray) ToRepositoryArrayOutputWithContext

func (i RepositoryArray) ToRepositoryArrayOutputWithContext(ctx context.Context) RepositoryArrayOutput

type RepositoryArrayInput

type RepositoryArrayInput interface {
	pulumi.Input

	ToRepositoryArrayOutput() RepositoryArrayOutput
	ToRepositoryArrayOutputWithContext(context.Context) RepositoryArrayOutput
}

RepositoryArrayInput is an input type that accepts RepositoryArray and RepositoryArrayOutput values. You can construct a concrete instance of `RepositoryArrayInput` via:

RepositoryArray{ RepositoryArgs{...} }

type RepositoryArrayOutput

type RepositoryArrayOutput struct{ *pulumi.OutputState }

func (RepositoryArrayOutput) ElementType

func (RepositoryArrayOutput) ElementType() reflect.Type

func (RepositoryArrayOutput) Index

func (RepositoryArrayOutput) ToRepositoryArrayOutput

func (o RepositoryArrayOutput) ToRepositoryArrayOutput() RepositoryArrayOutput

func (RepositoryArrayOutput) ToRepositoryArrayOutputWithContext

func (o RepositoryArrayOutput) ToRepositoryArrayOutputWithContext(ctx context.Context) RepositoryArrayOutput

type RepositoryIamBinding

type RepositoryIamBinding struct {
	pulumi.CustomResourceState

	Condition RepositoryIamBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The location for the Repository.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location pulumi.StringOutput `pulumi:"location"`
	// Identities that will be granted the privilege in `role`.
	// Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Members pulumi.StringArrayOutput `pulumi:"members"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The ID for the Repository.
	// Used to find the parent resource to bind the IAM policy to
	RepositoryId pulumi.StringOutput `pulumi:"repositoryId"`
	// The role that should be applied. Only one
	// `securesourcemanager.RepositoryIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Secure Source Manager Repository. Each of these resources serves a different use case:

* `securesourcemanager.RepositoryIamPolicy`: Authoritative. Sets the IAM policy for the repository and replaces any existing policy already attached. * `securesourcemanager.RepositoryIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the repository are preserved. * `securesourcemanager.RepositoryIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the repository are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `securesourcemanager.RepositoryIamPolicy`: Retrieves the IAM policy for the repository

> **Note:** `securesourcemanager.RepositoryIamPolicy` **cannot** be used in conjunction with `securesourcemanager.RepositoryIamBinding` and `securesourcemanager.RepositoryIamMember` or they will fight over what your policy should be.

> **Note:** `securesourcemanager.RepositoryIamBinding` resources **can be** used in conjunction with `securesourcemanager.RepositoryIamMember` resources **only if** they do not grant privilege to the same role.

## securesourcemanager.RepositoryIamPolicy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/securesourcemanager.repoAdmin",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = securesourcemanager.NewRepositoryIamPolicy(ctx, "policy", &securesourcemanager.RepositoryIamPolicyArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			PolicyData:   pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## securesourcemanager.RepositoryIamBinding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewRepositoryIamBinding(ctx, "binding", &securesourcemanager.RepositoryIamBindingArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			Role:         pulumi.String("roles/securesourcemanager.repoAdmin"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## securesourcemanager.RepositoryIamMember

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewRepositoryIamMember(ctx, "member", &securesourcemanager.RepositoryIamMemberArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			Role:         pulumi.String("roles/securesourcemanager.repoAdmin"),
			Member:       pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## This resource supports User Project Overrides.

-

# IAM policy for Secure Source Manager Repository Three different resources help you manage your IAM policy for Secure Source Manager Repository. Each of these resources serves a different use case:

* `securesourcemanager.RepositoryIamPolicy`: Authoritative. Sets the IAM policy for the repository and replaces any existing policy already attached. * `securesourcemanager.RepositoryIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the repository are preserved. * `securesourcemanager.RepositoryIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the repository are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `securesourcemanager.RepositoryIamPolicy`: Retrieves the IAM policy for the repository

> **Note:** `securesourcemanager.RepositoryIamPolicy` **cannot** be used in conjunction with `securesourcemanager.RepositoryIamBinding` and `securesourcemanager.RepositoryIamMember` or they will fight over what your policy should be.

> **Note:** `securesourcemanager.RepositoryIamBinding` resources **can be** used in conjunction with `securesourcemanager.RepositoryIamMember` resources **only if** they do not grant privilege to the same role.

## securesourcemanager.RepositoryIamPolicy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/securesourcemanager.repoAdmin",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = securesourcemanager.NewRepositoryIamPolicy(ctx, "policy", &securesourcemanager.RepositoryIamPolicyArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			PolicyData:   pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## securesourcemanager.RepositoryIamBinding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewRepositoryIamBinding(ctx, "binding", &securesourcemanager.RepositoryIamBindingArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			Role:         pulumi.String("roles/securesourcemanager.repoAdmin"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## securesourcemanager.RepositoryIamMember

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewRepositoryIamMember(ctx, "member", &securesourcemanager.RepositoryIamMemberArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			Role:         pulumi.String("roles/securesourcemanager.repoAdmin"),
			Member:       pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms:

* projects/{{project}}/locations/{{location}}/repositories/{{repository_id}}

* {{project}}/{{location}}/{{repository_id}}

* {{location}}/{{repository_id}}

* {{repository_id}}

Any variables not passed in the import command will be taken from the provider configuration.

Secure Source Manager repository IAM resources can be imported using the resource identifiers, role, and member.

IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.

```sh $ pulumi import gcp:securesourcemanager/repositoryIamBinding:RepositoryIamBinding editor "projects/{{project}}/locations/{{location}}/repositories/{{repository_id}} roles/securesourcemanager.repoAdmin user:jane@example.com" ```

IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.

```sh $ pulumi import gcp:securesourcemanager/repositoryIamBinding:RepositoryIamBinding editor "projects/{{project}}/locations/{{location}}/repositories/{{repository_id}} roles/securesourcemanager.repoAdmin" ```

IAM policy imports use the identifier of the resource in question, e.g.

```sh $ pulumi import gcp:securesourcemanager/repositoryIamBinding:RepositoryIamBinding editor projects/{{project}}/locations/{{location}}/repositories/{{repository_id}} ```

-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetRepositoryIamBinding

func GetRepositoryIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RepositoryIamBindingState, opts ...pulumi.ResourceOption) (*RepositoryIamBinding, error)

GetRepositoryIamBinding gets an existing RepositoryIamBinding 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 NewRepositoryIamBinding

func NewRepositoryIamBinding(ctx *pulumi.Context,
	name string, args *RepositoryIamBindingArgs, opts ...pulumi.ResourceOption) (*RepositoryIamBinding, error)

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

func (*RepositoryIamBinding) ElementType

func (*RepositoryIamBinding) ElementType() reflect.Type

func (*RepositoryIamBinding) ToRepositoryIamBindingOutput

func (i *RepositoryIamBinding) ToRepositoryIamBindingOutput() RepositoryIamBindingOutput

func (*RepositoryIamBinding) ToRepositoryIamBindingOutputWithContext

func (i *RepositoryIamBinding) ToRepositoryIamBindingOutputWithContext(ctx context.Context) RepositoryIamBindingOutput

type RepositoryIamBindingArgs

type RepositoryIamBindingArgs struct {
	Condition RepositoryIamBindingConditionPtrInput
	// The location for the Repository.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location pulumi.StringPtrInput
	// Identities that will be granted the privilege in `role`.
	// Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Members pulumi.StringArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput
	// The ID for the Repository.
	// Used to find the parent resource to bind the IAM policy to
	RepositoryId pulumi.StringInput
	// The role that should be applied. Only one
	// `securesourcemanager.RepositoryIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a RepositoryIamBinding resource.

func (RepositoryIamBindingArgs) ElementType

func (RepositoryIamBindingArgs) ElementType() reflect.Type

type RepositoryIamBindingArray

type RepositoryIamBindingArray []RepositoryIamBindingInput

func (RepositoryIamBindingArray) ElementType

func (RepositoryIamBindingArray) ElementType() reflect.Type

func (RepositoryIamBindingArray) ToRepositoryIamBindingArrayOutput

func (i RepositoryIamBindingArray) ToRepositoryIamBindingArrayOutput() RepositoryIamBindingArrayOutput

func (RepositoryIamBindingArray) ToRepositoryIamBindingArrayOutputWithContext

func (i RepositoryIamBindingArray) ToRepositoryIamBindingArrayOutputWithContext(ctx context.Context) RepositoryIamBindingArrayOutput

type RepositoryIamBindingArrayInput

type RepositoryIamBindingArrayInput interface {
	pulumi.Input

	ToRepositoryIamBindingArrayOutput() RepositoryIamBindingArrayOutput
	ToRepositoryIamBindingArrayOutputWithContext(context.Context) RepositoryIamBindingArrayOutput
}

RepositoryIamBindingArrayInput is an input type that accepts RepositoryIamBindingArray and RepositoryIamBindingArrayOutput values. You can construct a concrete instance of `RepositoryIamBindingArrayInput` via:

RepositoryIamBindingArray{ RepositoryIamBindingArgs{...} }

type RepositoryIamBindingArrayOutput

type RepositoryIamBindingArrayOutput struct{ *pulumi.OutputState }

func (RepositoryIamBindingArrayOutput) ElementType

func (RepositoryIamBindingArrayOutput) Index

func (RepositoryIamBindingArrayOutput) ToRepositoryIamBindingArrayOutput

func (o RepositoryIamBindingArrayOutput) ToRepositoryIamBindingArrayOutput() RepositoryIamBindingArrayOutput

func (RepositoryIamBindingArrayOutput) ToRepositoryIamBindingArrayOutputWithContext

func (o RepositoryIamBindingArrayOutput) ToRepositoryIamBindingArrayOutputWithContext(ctx context.Context) RepositoryIamBindingArrayOutput

type RepositoryIamBindingCondition

type RepositoryIamBindingCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type RepositoryIamBindingConditionArgs

type RepositoryIamBindingConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (RepositoryIamBindingConditionArgs) ElementType

func (RepositoryIamBindingConditionArgs) ToRepositoryIamBindingConditionOutput

func (i RepositoryIamBindingConditionArgs) ToRepositoryIamBindingConditionOutput() RepositoryIamBindingConditionOutput

func (RepositoryIamBindingConditionArgs) ToRepositoryIamBindingConditionOutputWithContext

func (i RepositoryIamBindingConditionArgs) ToRepositoryIamBindingConditionOutputWithContext(ctx context.Context) RepositoryIamBindingConditionOutput

func (RepositoryIamBindingConditionArgs) ToRepositoryIamBindingConditionPtrOutput

func (i RepositoryIamBindingConditionArgs) ToRepositoryIamBindingConditionPtrOutput() RepositoryIamBindingConditionPtrOutput

func (RepositoryIamBindingConditionArgs) ToRepositoryIamBindingConditionPtrOutputWithContext

func (i RepositoryIamBindingConditionArgs) ToRepositoryIamBindingConditionPtrOutputWithContext(ctx context.Context) RepositoryIamBindingConditionPtrOutput

type RepositoryIamBindingConditionInput

type RepositoryIamBindingConditionInput interface {
	pulumi.Input

	ToRepositoryIamBindingConditionOutput() RepositoryIamBindingConditionOutput
	ToRepositoryIamBindingConditionOutputWithContext(context.Context) RepositoryIamBindingConditionOutput
}

RepositoryIamBindingConditionInput is an input type that accepts RepositoryIamBindingConditionArgs and RepositoryIamBindingConditionOutput values. You can construct a concrete instance of `RepositoryIamBindingConditionInput` via:

RepositoryIamBindingConditionArgs{...}

type RepositoryIamBindingConditionOutput

type RepositoryIamBindingConditionOutput struct{ *pulumi.OutputState }

func (RepositoryIamBindingConditionOutput) Description

func (RepositoryIamBindingConditionOutput) ElementType

func (RepositoryIamBindingConditionOutput) Expression

func (RepositoryIamBindingConditionOutput) Title

func (RepositoryIamBindingConditionOutput) ToRepositoryIamBindingConditionOutput

func (o RepositoryIamBindingConditionOutput) ToRepositoryIamBindingConditionOutput() RepositoryIamBindingConditionOutput

func (RepositoryIamBindingConditionOutput) ToRepositoryIamBindingConditionOutputWithContext

func (o RepositoryIamBindingConditionOutput) ToRepositoryIamBindingConditionOutputWithContext(ctx context.Context) RepositoryIamBindingConditionOutput

func (RepositoryIamBindingConditionOutput) ToRepositoryIamBindingConditionPtrOutput

func (o RepositoryIamBindingConditionOutput) ToRepositoryIamBindingConditionPtrOutput() RepositoryIamBindingConditionPtrOutput

func (RepositoryIamBindingConditionOutput) ToRepositoryIamBindingConditionPtrOutputWithContext

func (o RepositoryIamBindingConditionOutput) ToRepositoryIamBindingConditionPtrOutputWithContext(ctx context.Context) RepositoryIamBindingConditionPtrOutput

type RepositoryIamBindingConditionPtrInput

type RepositoryIamBindingConditionPtrInput interface {
	pulumi.Input

	ToRepositoryIamBindingConditionPtrOutput() RepositoryIamBindingConditionPtrOutput
	ToRepositoryIamBindingConditionPtrOutputWithContext(context.Context) RepositoryIamBindingConditionPtrOutput
}

RepositoryIamBindingConditionPtrInput is an input type that accepts RepositoryIamBindingConditionArgs, RepositoryIamBindingConditionPtr and RepositoryIamBindingConditionPtrOutput values. You can construct a concrete instance of `RepositoryIamBindingConditionPtrInput` via:

        RepositoryIamBindingConditionArgs{...}

or:

        nil

type RepositoryIamBindingConditionPtrOutput

type RepositoryIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (RepositoryIamBindingConditionPtrOutput) Description

func (RepositoryIamBindingConditionPtrOutput) Elem

func (RepositoryIamBindingConditionPtrOutput) ElementType

func (RepositoryIamBindingConditionPtrOutput) Expression

func (RepositoryIamBindingConditionPtrOutput) Title

func (RepositoryIamBindingConditionPtrOutput) ToRepositoryIamBindingConditionPtrOutput

func (o RepositoryIamBindingConditionPtrOutput) ToRepositoryIamBindingConditionPtrOutput() RepositoryIamBindingConditionPtrOutput

func (RepositoryIamBindingConditionPtrOutput) ToRepositoryIamBindingConditionPtrOutputWithContext

func (o RepositoryIamBindingConditionPtrOutput) ToRepositoryIamBindingConditionPtrOutputWithContext(ctx context.Context) RepositoryIamBindingConditionPtrOutput

type RepositoryIamBindingInput

type RepositoryIamBindingInput interface {
	pulumi.Input

	ToRepositoryIamBindingOutput() RepositoryIamBindingOutput
	ToRepositoryIamBindingOutputWithContext(ctx context.Context) RepositoryIamBindingOutput
}

type RepositoryIamBindingMap

type RepositoryIamBindingMap map[string]RepositoryIamBindingInput

func (RepositoryIamBindingMap) ElementType

func (RepositoryIamBindingMap) ElementType() reflect.Type

func (RepositoryIamBindingMap) ToRepositoryIamBindingMapOutput

func (i RepositoryIamBindingMap) ToRepositoryIamBindingMapOutput() RepositoryIamBindingMapOutput

func (RepositoryIamBindingMap) ToRepositoryIamBindingMapOutputWithContext

func (i RepositoryIamBindingMap) ToRepositoryIamBindingMapOutputWithContext(ctx context.Context) RepositoryIamBindingMapOutput

type RepositoryIamBindingMapInput

type RepositoryIamBindingMapInput interface {
	pulumi.Input

	ToRepositoryIamBindingMapOutput() RepositoryIamBindingMapOutput
	ToRepositoryIamBindingMapOutputWithContext(context.Context) RepositoryIamBindingMapOutput
}

RepositoryIamBindingMapInput is an input type that accepts RepositoryIamBindingMap and RepositoryIamBindingMapOutput values. You can construct a concrete instance of `RepositoryIamBindingMapInput` via:

RepositoryIamBindingMap{ "key": RepositoryIamBindingArgs{...} }

type RepositoryIamBindingMapOutput

type RepositoryIamBindingMapOutput struct{ *pulumi.OutputState }

func (RepositoryIamBindingMapOutput) ElementType

func (RepositoryIamBindingMapOutput) MapIndex

func (RepositoryIamBindingMapOutput) ToRepositoryIamBindingMapOutput

func (o RepositoryIamBindingMapOutput) ToRepositoryIamBindingMapOutput() RepositoryIamBindingMapOutput

func (RepositoryIamBindingMapOutput) ToRepositoryIamBindingMapOutputWithContext

func (o RepositoryIamBindingMapOutput) ToRepositoryIamBindingMapOutputWithContext(ctx context.Context) RepositoryIamBindingMapOutput

type RepositoryIamBindingOutput

type RepositoryIamBindingOutput struct{ *pulumi.OutputState }

func (RepositoryIamBindingOutput) Condition

func (RepositoryIamBindingOutput) ElementType

func (RepositoryIamBindingOutput) ElementType() reflect.Type

func (RepositoryIamBindingOutput) Etag

(Computed) The etag of the IAM policy.

func (RepositoryIamBindingOutput) Location

The location for the Repository. Used to find the parent resource to bind the IAM policy to. If not specified, the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no location is specified, it is taken from the provider configuration.

func (RepositoryIamBindingOutput) Members

Identities that will be granted the privilege in `role`. Each entry can have one of the following values: * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project" * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project" * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (RepositoryIamBindingOutput) Project

The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.

func (RepositoryIamBindingOutput) RepositoryId

The ID for the Repository. Used to find the parent resource to bind the IAM policy to

func (RepositoryIamBindingOutput) Role

The role that should be applied. Only one `securesourcemanager.RepositoryIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.

func (RepositoryIamBindingOutput) ToRepositoryIamBindingOutput

func (o RepositoryIamBindingOutput) ToRepositoryIamBindingOutput() RepositoryIamBindingOutput

func (RepositoryIamBindingOutput) ToRepositoryIamBindingOutputWithContext

func (o RepositoryIamBindingOutput) ToRepositoryIamBindingOutputWithContext(ctx context.Context) RepositoryIamBindingOutput

type RepositoryIamBindingState

type RepositoryIamBindingState struct {
	Condition RepositoryIamBindingConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// The location for the Repository.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location pulumi.StringPtrInput
	// Identities that will be granted the privilege in `role`.
	// Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Members pulumi.StringArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput
	// The ID for the Repository.
	// Used to find the parent resource to bind the IAM policy to
	RepositoryId pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `securesourcemanager.RepositoryIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (RepositoryIamBindingState) ElementType

func (RepositoryIamBindingState) ElementType() reflect.Type

type RepositoryIamMember

type RepositoryIamMember struct {
	pulumi.CustomResourceState

	Condition RepositoryIamMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The location for the Repository.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location pulumi.StringOutput `pulumi:"location"`
	// Identities that will be granted the privilege in `role`.
	// Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Member pulumi.StringOutput `pulumi:"member"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The ID for the Repository.
	// Used to find the parent resource to bind the IAM policy to
	RepositoryId pulumi.StringOutput `pulumi:"repositoryId"`
	// The role that should be applied. Only one
	// `securesourcemanager.RepositoryIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Secure Source Manager Repository. Each of these resources serves a different use case:

* `securesourcemanager.RepositoryIamPolicy`: Authoritative. Sets the IAM policy for the repository and replaces any existing policy already attached. * `securesourcemanager.RepositoryIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the repository are preserved. * `securesourcemanager.RepositoryIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the repository are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `securesourcemanager.RepositoryIamPolicy`: Retrieves the IAM policy for the repository

> **Note:** `securesourcemanager.RepositoryIamPolicy` **cannot** be used in conjunction with `securesourcemanager.RepositoryIamBinding` and `securesourcemanager.RepositoryIamMember` or they will fight over what your policy should be.

> **Note:** `securesourcemanager.RepositoryIamBinding` resources **can be** used in conjunction with `securesourcemanager.RepositoryIamMember` resources **only if** they do not grant privilege to the same role.

## securesourcemanager.RepositoryIamPolicy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/securesourcemanager.repoAdmin",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = securesourcemanager.NewRepositoryIamPolicy(ctx, "policy", &securesourcemanager.RepositoryIamPolicyArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			PolicyData:   pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## securesourcemanager.RepositoryIamBinding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewRepositoryIamBinding(ctx, "binding", &securesourcemanager.RepositoryIamBindingArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			Role:         pulumi.String("roles/securesourcemanager.repoAdmin"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## securesourcemanager.RepositoryIamMember

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewRepositoryIamMember(ctx, "member", &securesourcemanager.RepositoryIamMemberArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			Role:         pulumi.String("roles/securesourcemanager.repoAdmin"),
			Member:       pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## This resource supports User Project Overrides.

-

# IAM policy for Secure Source Manager Repository Three different resources help you manage your IAM policy for Secure Source Manager Repository. Each of these resources serves a different use case:

* `securesourcemanager.RepositoryIamPolicy`: Authoritative. Sets the IAM policy for the repository and replaces any existing policy already attached. * `securesourcemanager.RepositoryIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the repository are preserved. * `securesourcemanager.RepositoryIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the repository are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `securesourcemanager.RepositoryIamPolicy`: Retrieves the IAM policy for the repository

> **Note:** `securesourcemanager.RepositoryIamPolicy` **cannot** be used in conjunction with `securesourcemanager.RepositoryIamBinding` and `securesourcemanager.RepositoryIamMember` or they will fight over what your policy should be.

> **Note:** `securesourcemanager.RepositoryIamBinding` resources **can be** used in conjunction with `securesourcemanager.RepositoryIamMember` resources **only if** they do not grant privilege to the same role.

## securesourcemanager.RepositoryIamPolicy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/securesourcemanager.repoAdmin",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = securesourcemanager.NewRepositoryIamPolicy(ctx, "policy", &securesourcemanager.RepositoryIamPolicyArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			PolicyData:   pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## securesourcemanager.RepositoryIamBinding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewRepositoryIamBinding(ctx, "binding", &securesourcemanager.RepositoryIamBindingArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			Role:         pulumi.String("roles/securesourcemanager.repoAdmin"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## securesourcemanager.RepositoryIamMember

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewRepositoryIamMember(ctx, "member", &securesourcemanager.RepositoryIamMemberArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			Role:         pulumi.String("roles/securesourcemanager.repoAdmin"),
			Member:       pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms:

* projects/{{project}}/locations/{{location}}/repositories/{{repository_id}}

* {{project}}/{{location}}/{{repository_id}}

* {{location}}/{{repository_id}}

* {{repository_id}}

Any variables not passed in the import command will be taken from the provider configuration.

Secure Source Manager repository IAM resources can be imported using the resource identifiers, role, and member.

IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.

```sh $ pulumi import gcp:securesourcemanager/repositoryIamMember:RepositoryIamMember editor "projects/{{project}}/locations/{{location}}/repositories/{{repository_id}} roles/securesourcemanager.repoAdmin user:jane@example.com" ```

IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.

```sh $ pulumi import gcp:securesourcemanager/repositoryIamMember:RepositoryIamMember editor "projects/{{project}}/locations/{{location}}/repositories/{{repository_id}} roles/securesourcemanager.repoAdmin" ```

IAM policy imports use the identifier of the resource in question, e.g.

```sh $ pulumi import gcp:securesourcemanager/repositoryIamMember:RepositoryIamMember editor projects/{{project}}/locations/{{location}}/repositories/{{repository_id}} ```

-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetRepositoryIamMember

func GetRepositoryIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RepositoryIamMemberState, opts ...pulumi.ResourceOption) (*RepositoryIamMember, error)

GetRepositoryIamMember gets an existing RepositoryIamMember 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 NewRepositoryIamMember

func NewRepositoryIamMember(ctx *pulumi.Context,
	name string, args *RepositoryIamMemberArgs, opts ...pulumi.ResourceOption) (*RepositoryIamMember, error)

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

func (*RepositoryIamMember) ElementType

func (*RepositoryIamMember) ElementType() reflect.Type

func (*RepositoryIamMember) ToRepositoryIamMemberOutput

func (i *RepositoryIamMember) ToRepositoryIamMemberOutput() RepositoryIamMemberOutput

func (*RepositoryIamMember) ToRepositoryIamMemberOutputWithContext

func (i *RepositoryIamMember) ToRepositoryIamMemberOutputWithContext(ctx context.Context) RepositoryIamMemberOutput

type RepositoryIamMemberArgs

type RepositoryIamMemberArgs struct {
	Condition RepositoryIamMemberConditionPtrInput
	// The location for the Repository.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location pulumi.StringPtrInput
	// Identities that will be granted the privilege in `role`.
	// Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Member pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput
	// The ID for the Repository.
	// Used to find the parent resource to bind the IAM policy to
	RepositoryId pulumi.StringInput
	// The role that should be applied. Only one
	// `securesourcemanager.RepositoryIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a RepositoryIamMember resource.

func (RepositoryIamMemberArgs) ElementType

func (RepositoryIamMemberArgs) ElementType() reflect.Type

type RepositoryIamMemberArray

type RepositoryIamMemberArray []RepositoryIamMemberInput

func (RepositoryIamMemberArray) ElementType

func (RepositoryIamMemberArray) ElementType() reflect.Type

func (RepositoryIamMemberArray) ToRepositoryIamMemberArrayOutput

func (i RepositoryIamMemberArray) ToRepositoryIamMemberArrayOutput() RepositoryIamMemberArrayOutput

func (RepositoryIamMemberArray) ToRepositoryIamMemberArrayOutputWithContext

func (i RepositoryIamMemberArray) ToRepositoryIamMemberArrayOutputWithContext(ctx context.Context) RepositoryIamMemberArrayOutput

type RepositoryIamMemberArrayInput

type RepositoryIamMemberArrayInput interface {
	pulumi.Input

	ToRepositoryIamMemberArrayOutput() RepositoryIamMemberArrayOutput
	ToRepositoryIamMemberArrayOutputWithContext(context.Context) RepositoryIamMemberArrayOutput
}

RepositoryIamMemberArrayInput is an input type that accepts RepositoryIamMemberArray and RepositoryIamMemberArrayOutput values. You can construct a concrete instance of `RepositoryIamMemberArrayInput` via:

RepositoryIamMemberArray{ RepositoryIamMemberArgs{...} }

type RepositoryIamMemberArrayOutput

type RepositoryIamMemberArrayOutput struct{ *pulumi.OutputState }

func (RepositoryIamMemberArrayOutput) ElementType

func (RepositoryIamMemberArrayOutput) Index

func (RepositoryIamMemberArrayOutput) ToRepositoryIamMemberArrayOutput

func (o RepositoryIamMemberArrayOutput) ToRepositoryIamMemberArrayOutput() RepositoryIamMemberArrayOutput

func (RepositoryIamMemberArrayOutput) ToRepositoryIamMemberArrayOutputWithContext

func (o RepositoryIamMemberArrayOutput) ToRepositoryIamMemberArrayOutputWithContext(ctx context.Context) RepositoryIamMemberArrayOutput

type RepositoryIamMemberCondition

type RepositoryIamMemberCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type RepositoryIamMemberConditionArgs

type RepositoryIamMemberConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (RepositoryIamMemberConditionArgs) ElementType

func (RepositoryIamMemberConditionArgs) ToRepositoryIamMemberConditionOutput

func (i RepositoryIamMemberConditionArgs) ToRepositoryIamMemberConditionOutput() RepositoryIamMemberConditionOutput

func (RepositoryIamMemberConditionArgs) ToRepositoryIamMemberConditionOutputWithContext

func (i RepositoryIamMemberConditionArgs) ToRepositoryIamMemberConditionOutputWithContext(ctx context.Context) RepositoryIamMemberConditionOutput

func (RepositoryIamMemberConditionArgs) ToRepositoryIamMemberConditionPtrOutput

func (i RepositoryIamMemberConditionArgs) ToRepositoryIamMemberConditionPtrOutput() RepositoryIamMemberConditionPtrOutput

func (RepositoryIamMemberConditionArgs) ToRepositoryIamMemberConditionPtrOutputWithContext

func (i RepositoryIamMemberConditionArgs) ToRepositoryIamMemberConditionPtrOutputWithContext(ctx context.Context) RepositoryIamMemberConditionPtrOutput

type RepositoryIamMemberConditionInput

type RepositoryIamMemberConditionInput interface {
	pulumi.Input

	ToRepositoryIamMemberConditionOutput() RepositoryIamMemberConditionOutput
	ToRepositoryIamMemberConditionOutputWithContext(context.Context) RepositoryIamMemberConditionOutput
}

RepositoryIamMemberConditionInput is an input type that accepts RepositoryIamMemberConditionArgs and RepositoryIamMemberConditionOutput values. You can construct a concrete instance of `RepositoryIamMemberConditionInput` via:

RepositoryIamMemberConditionArgs{...}

type RepositoryIamMemberConditionOutput

type RepositoryIamMemberConditionOutput struct{ *pulumi.OutputState }

func (RepositoryIamMemberConditionOutput) Description

func (RepositoryIamMemberConditionOutput) ElementType

func (RepositoryIamMemberConditionOutput) Expression

func (RepositoryIamMemberConditionOutput) Title

func (RepositoryIamMemberConditionOutput) ToRepositoryIamMemberConditionOutput

func (o RepositoryIamMemberConditionOutput) ToRepositoryIamMemberConditionOutput() RepositoryIamMemberConditionOutput

func (RepositoryIamMemberConditionOutput) ToRepositoryIamMemberConditionOutputWithContext

func (o RepositoryIamMemberConditionOutput) ToRepositoryIamMemberConditionOutputWithContext(ctx context.Context) RepositoryIamMemberConditionOutput

func (RepositoryIamMemberConditionOutput) ToRepositoryIamMemberConditionPtrOutput

func (o RepositoryIamMemberConditionOutput) ToRepositoryIamMemberConditionPtrOutput() RepositoryIamMemberConditionPtrOutput

func (RepositoryIamMemberConditionOutput) ToRepositoryIamMemberConditionPtrOutputWithContext

func (o RepositoryIamMemberConditionOutput) ToRepositoryIamMemberConditionPtrOutputWithContext(ctx context.Context) RepositoryIamMemberConditionPtrOutput

type RepositoryIamMemberConditionPtrInput

type RepositoryIamMemberConditionPtrInput interface {
	pulumi.Input

	ToRepositoryIamMemberConditionPtrOutput() RepositoryIamMemberConditionPtrOutput
	ToRepositoryIamMemberConditionPtrOutputWithContext(context.Context) RepositoryIamMemberConditionPtrOutput
}

RepositoryIamMemberConditionPtrInput is an input type that accepts RepositoryIamMemberConditionArgs, RepositoryIamMemberConditionPtr and RepositoryIamMemberConditionPtrOutput values. You can construct a concrete instance of `RepositoryIamMemberConditionPtrInput` via:

        RepositoryIamMemberConditionArgs{...}

or:

        nil

type RepositoryIamMemberConditionPtrOutput

type RepositoryIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (RepositoryIamMemberConditionPtrOutput) Description

func (RepositoryIamMemberConditionPtrOutput) Elem

func (RepositoryIamMemberConditionPtrOutput) ElementType

func (RepositoryIamMemberConditionPtrOutput) Expression

func (RepositoryIamMemberConditionPtrOutput) Title

func (RepositoryIamMemberConditionPtrOutput) ToRepositoryIamMemberConditionPtrOutput

func (o RepositoryIamMemberConditionPtrOutput) ToRepositoryIamMemberConditionPtrOutput() RepositoryIamMemberConditionPtrOutput

func (RepositoryIamMemberConditionPtrOutput) ToRepositoryIamMemberConditionPtrOutputWithContext

func (o RepositoryIamMemberConditionPtrOutput) ToRepositoryIamMemberConditionPtrOutputWithContext(ctx context.Context) RepositoryIamMemberConditionPtrOutput

type RepositoryIamMemberInput

type RepositoryIamMemberInput interface {
	pulumi.Input

	ToRepositoryIamMemberOutput() RepositoryIamMemberOutput
	ToRepositoryIamMemberOutputWithContext(ctx context.Context) RepositoryIamMemberOutput
}

type RepositoryIamMemberMap

type RepositoryIamMemberMap map[string]RepositoryIamMemberInput

func (RepositoryIamMemberMap) ElementType

func (RepositoryIamMemberMap) ElementType() reflect.Type

func (RepositoryIamMemberMap) ToRepositoryIamMemberMapOutput

func (i RepositoryIamMemberMap) ToRepositoryIamMemberMapOutput() RepositoryIamMemberMapOutput

func (RepositoryIamMemberMap) ToRepositoryIamMemberMapOutputWithContext

func (i RepositoryIamMemberMap) ToRepositoryIamMemberMapOutputWithContext(ctx context.Context) RepositoryIamMemberMapOutput

type RepositoryIamMemberMapInput

type RepositoryIamMemberMapInput interface {
	pulumi.Input

	ToRepositoryIamMemberMapOutput() RepositoryIamMemberMapOutput
	ToRepositoryIamMemberMapOutputWithContext(context.Context) RepositoryIamMemberMapOutput
}

RepositoryIamMemberMapInput is an input type that accepts RepositoryIamMemberMap and RepositoryIamMemberMapOutput values. You can construct a concrete instance of `RepositoryIamMemberMapInput` via:

RepositoryIamMemberMap{ "key": RepositoryIamMemberArgs{...} }

type RepositoryIamMemberMapOutput

type RepositoryIamMemberMapOutput struct{ *pulumi.OutputState }

func (RepositoryIamMemberMapOutput) ElementType

func (RepositoryIamMemberMapOutput) MapIndex

func (RepositoryIamMemberMapOutput) ToRepositoryIamMemberMapOutput

func (o RepositoryIamMemberMapOutput) ToRepositoryIamMemberMapOutput() RepositoryIamMemberMapOutput

func (RepositoryIamMemberMapOutput) ToRepositoryIamMemberMapOutputWithContext

func (o RepositoryIamMemberMapOutput) ToRepositoryIamMemberMapOutputWithContext(ctx context.Context) RepositoryIamMemberMapOutput

type RepositoryIamMemberOutput

type RepositoryIamMemberOutput struct{ *pulumi.OutputState }

func (RepositoryIamMemberOutput) Condition

func (RepositoryIamMemberOutput) ElementType

func (RepositoryIamMemberOutput) ElementType() reflect.Type

func (RepositoryIamMemberOutput) Etag

(Computed) The etag of the IAM policy.

func (RepositoryIamMemberOutput) Location

The location for the Repository. Used to find the parent resource to bind the IAM policy to. If not specified, the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no location is specified, it is taken from the provider configuration.

func (RepositoryIamMemberOutput) Member

Identities that will be granted the privilege in `role`. Each entry can have one of the following values: * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account. * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account. * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com. * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com. * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project" * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project" * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (RepositoryIamMemberOutput) Project

The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.

func (RepositoryIamMemberOutput) RepositoryId

The ID for the Repository. Used to find the parent resource to bind the IAM policy to

func (RepositoryIamMemberOutput) Role

The role that should be applied. Only one `securesourcemanager.RepositoryIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.

func (RepositoryIamMemberOutput) ToRepositoryIamMemberOutput

func (o RepositoryIamMemberOutput) ToRepositoryIamMemberOutput() RepositoryIamMemberOutput

func (RepositoryIamMemberOutput) ToRepositoryIamMemberOutputWithContext

func (o RepositoryIamMemberOutput) ToRepositoryIamMemberOutputWithContext(ctx context.Context) RepositoryIamMemberOutput

type RepositoryIamMemberState

type RepositoryIamMemberState struct {
	Condition RepositoryIamMemberConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// The location for the Repository.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location pulumi.StringPtrInput
	// Identities that will be granted the privilege in `role`.
	// Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Member pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput
	// The ID for the Repository.
	// Used to find the parent resource to bind the IAM policy to
	RepositoryId pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `securesourcemanager.RepositoryIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (RepositoryIamMemberState) ElementType

func (RepositoryIamMemberState) ElementType() reflect.Type

type RepositoryIamPolicy

type RepositoryIamPolicy struct {
	pulumi.CustomResourceState

	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The location for the Repository.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location pulumi.StringOutput `pulumi:"location"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The ID for the Repository.
	// Used to find the parent resource to bind the IAM policy to
	RepositoryId pulumi.StringOutput `pulumi:"repositoryId"`
}

Three different resources help you manage your IAM policy for Secure Source Manager Repository. Each of these resources serves a different use case:

* `securesourcemanager.RepositoryIamPolicy`: Authoritative. Sets the IAM policy for the repository and replaces any existing policy already attached. * `securesourcemanager.RepositoryIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the repository are preserved. * `securesourcemanager.RepositoryIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the repository are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `securesourcemanager.RepositoryIamPolicy`: Retrieves the IAM policy for the repository

> **Note:** `securesourcemanager.RepositoryIamPolicy` **cannot** be used in conjunction with `securesourcemanager.RepositoryIamBinding` and `securesourcemanager.RepositoryIamMember` or they will fight over what your policy should be.

> **Note:** `securesourcemanager.RepositoryIamBinding` resources **can be** used in conjunction with `securesourcemanager.RepositoryIamMember` resources **only if** they do not grant privilege to the same role.

## securesourcemanager.RepositoryIamPolicy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/securesourcemanager.repoAdmin",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = securesourcemanager.NewRepositoryIamPolicy(ctx, "policy", &securesourcemanager.RepositoryIamPolicyArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			PolicyData:   pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## securesourcemanager.RepositoryIamBinding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewRepositoryIamBinding(ctx, "binding", &securesourcemanager.RepositoryIamBindingArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			Role:         pulumi.String("roles/securesourcemanager.repoAdmin"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## securesourcemanager.RepositoryIamMember

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewRepositoryIamMember(ctx, "member", &securesourcemanager.RepositoryIamMemberArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			Role:         pulumi.String("roles/securesourcemanager.repoAdmin"),
			Member:       pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## This resource supports User Project Overrides.

-

# IAM policy for Secure Source Manager Repository Three different resources help you manage your IAM policy for Secure Source Manager Repository. Each of these resources serves a different use case:

* `securesourcemanager.RepositoryIamPolicy`: Authoritative. Sets the IAM policy for the repository and replaces any existing policy already attached. * `securesourcemanager.RepositoryIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the repository are preserved. * `securesourcemanager.RepositoryIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the repository are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `securesourcemanager.RepositoryIamPolicy`: Retrieves the IAM policy for the repository

> **Note:** `securesourcemanager.RepositoryIamPolicy` **cannot** be used in conjunction with `securesourcemanager.RepositoryIamBinding` and `securesourcemanager.RepositoryIamMember` or they will fight over what your policy should be.

> **Note:** `securesourcemanager.RepositoryIamBinding` resources **can be** used in conjunction with `securesourcemanager.RepositoryIamMember` resources **only if** they do not grant privilege to the same role.

## securesourcemanager.RepositoryIamPolicy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/securesourcemanager.repoAdmin",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = securesourcemanager.NewRepositoryIamPolicy(ctx, "policy", &securesourcemanager.RepositoryIamPolicyArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			PolicyData:   pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## securesourcemanager.RepositoryIamBinding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewRepositoryIamBinding(ctx, "binding", &securesourcemanager.RepositoryIamBindingArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			Role:         pulumi.String("roles/securesourcemanager.repoAdmin"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## securesourcemanager.RepositoryIamMember

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/securesourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securesourcemanager.NewRepositoryIamMember(ctx, "member", &securesourcemanager.RepositoryIamMemberArgs{
			Project:      pulumi.Any(_default.Project),
			Location:     pulumi.Any(_default.Location),
			RepositoryId: pulumi.Any(_default.RepositoryId),
			Role:         pulumi.String("roles/securesourcemanager.repoAdmin"),
			Member:       pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms:

* projects/{{project}}/locations/{{location}}/repositories/{{repository_id}}

* {{project}}/{{location}}/{{repository_id}}

* {{location}}/{{repository_id}}

* {{repository_id}}

Any variables not passed in the import command will be taken from the provider configuration.

Secure Source Manager repository IAM resources can be imported using the resource identifiers, role, and member.

IAM member imports use space-delimited identifiers: the resource in question, the role, and the member identity, e.g.

```sh $ pulumi import gcp:securesourcemanager/repositoryIamPolicy:RepositoryIamPolicy editor "projects/{{project}}/locations/{{location}}/repositories/{{repository_id}} roles/securesourcemanager.repoAdmin user:jane@example.com" ```

IAM binding imports use space-delimited identifiers: the resource in question and the role, e.g.

```sh $ pulumi import gcp:securesourcemanager/repositoryIamPolicy:RepositoryIamPolicy editor "projects/{{project}}/locations/{{location}}/repositories/{{repository_id}} roles/securesourcemanager.repoAdmin" ```

IAM policy imports use the identifier of the resource in question, e.g.

```sh $ pulumi import gcp:securesourcemanager/repositoryIamPolicy:RepositoryIamPolicy editor projects/{{project}}/locations/{{location}}/repositories/{{repository_id}} ```

-> **Custom Roles** If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetRepositoryIamPolicy

func GetRepositoryIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RepositoryIamPolicyState, opts ...pulumi.ResourceOption) (*RepositoryIamPolicy, error)

GetRepositoryIamPolicy gets an existing RepositoryIamPolicy 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 NewRepositoryIamPolicy

func NewRepositoryIamPolicy(ctx *pulumi.Context,
	name string, args *RepositoryIamPolicyArgs, opts ...pulumi.ResourceOption) (*RepositoryIamPolicy, error)

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

func (*RepositoryIamPolicy) ElementType

func (*RepositoryIamPolicy) ElementType() reflect.Type

func (*RepositoryIamPolicy) ToRepositoryIamPolicyOutput

func (i *RepositoryIamPolicy) ToRepositoryIamPolicyOutput() RepositoryIamPolicyOutput

func (*RepositoryIamPolicy) ToRepositoryIamPolicyOutputWithContext

func (i *RepositoryIamPolicy) ToRepositoryIamPolicyOutputWithContext(ctx context.Context) RepositoryIamPolicyOutput

type RepositoryIamPolicyArgs

type RepositoryIamPolicyArgs struct {
	// The location for the Repository.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput
	// The ID for the Repository.
	// Used to find the parent resource to bind the IAM policy to
	RepositoryId pulumi.StringInput
}

The set of arguments for constructing a RepositoryIamPolicy resource.

func (RepositoryIamPolicyArgs) ElementType

func (RepositoryIamPolicyArgs) ElementType() reflect.Type

type RepositoryIamPolicyArray

type RepositoryIamPolicyArray []RepositoryIamPolicyInput

func (RepositoryIamPolicyArray) ElementType

func (RepositoryIamPolicyArray) ElementType() reflect.Type

func (RepositoryIamPolicyArray) ToRepositoryIamPolicyArrayOutput

func (i RepositoryIamPolicyArray) ToRepositoryIamPolicyArrayOutput() RepositoryIamPolicyArrayOutput

func (RepositoryIamPolicyArray) ToRepositoryIamPolicyArrayOutputWithContext

func (i RepositoryIamPolicyArray) ToRepositoryIamPolicyArrayOutputWithContext(ctx context.Context) RepositoryIamPolicyArrayOutput

type RepositoryIamPolicyArrayInput

type RepositoryIamPolicyArrayInput interface {
	pulumi.Input

	ToRepositoryIamPolicyArrayOutput() RepositoryIamPolicyArrayOutput
	ToRepositoryIamPolicyArrayOutputWithContext(context.Context) RepositoryIamPolicyArrayOutput
}

RepositoryIamPolicyArrayInput is an input type that accepts RepositoryIamPolicyArray and RepositoryIamPolicyArrayOutput values. You can construct a concrete instance of `RepositoryIamPolicyArrayInput` via:

RepositoryIamPolicyArray{ RepositoryIamPolicyArgs{...} }

type RepositoryIamPolicyArrayOutput

type RepositoryIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (RepositoryIamPolicyArrayOutput) ElementType

func (RepositoryIamPolicyArrayOutput) Index

func (RepositoryIamPolicyArrayOutput) ToRepositoryIamPolicyArrayOutput

func (o RepositoryIamPolicyArrayOutput) ToRepositoryIamPolicyArrayOutput() RepositoryIamPolicyArrayOutput

func (RepositoryIamPolicyArrayOutput) ToRepositoryIamPolicyArrayOutputWithContext

func (o RepositoryIamPolicyArrayOutput) ToRepositoryIamPolicyArrayOutputWithContext(ctx context.Context) RepositoryIamPolicyArrayOutput

type RepositoryIamPolicyInput

type RepositoryIamPolicyInput interface {
	pulumi.Input

	ToRepositoryIamPolicyOutput() RepositoryIamPolicyOutput
	ToRepositoryIamPolicyOutputWithContext(ctx context.Context) RepositoryIamPolicyOutput
}

type RepositoryIamPolicyMap

type RepositoryIamPolicyMap map[string]RepositoryIamPolicyInput

func (RepositoryIamPolicyMap) ElementType

func (RepositoryIamPolicyMap) ElementType() reflect.Type

func (RepositoryIamPolicyMap) ToRepositoryIamPolicyMapOutput

func (i RepositoryIamPolicyMap) ToRepositoryIamPolicyMapOutput() RepositoryIamPolicyMapOutput

func (RepositoryIamPolicyMap) ToRepositoryIamPolicyMapOutputWithContext

func (i RepositoryIamPolicyMap) ToRepositoryIamPolicyMapOutputWithContext(ctx context.Context) RepositoryIamPolicyMapOutput

type RepositoryIamPolicyMapInput

type RepositoryIamPolicyMapInput interface {
	pulumi.Input

	ToRepositoryIamPolicyMapOutput() RepositoryIamPolicyMapOutput
	ToRepositoryIamPolicyMapOutputWithContext(context.Context) RepositoryIamPolicyMapOutput
}

RepositoryIamPolicyMapInput is an input type that accepts RepositoryIamPolicyMap and RepositoryIamPolicyMapOutput values. You can construct a concrete instance of `RepositoryIamPolicyMapInput` via:

RepositoryIamPolicyMap{ "key": RepositoryIamPolicyArgs{...} }

type RepositoryIamPolicyMapOutput

type RepositoryIamPolicyMapOutput struct{ *pulumi.OutputState }

func (RepositoryIamPolicyMapOutput) ElementType

func (RepositoryIamPolicyMapOutput) MapIndex

func (RepositoryIamPolicyMapOutput) ToRepositoryIamPolicyMapOutput

func (o RepositoryIamPolicyMapOutput) ToRepositoryIamPolicyMapOutput() RepositoryIamPolicyMapOutput

func (RepositoryIamPolicyMapOutput) ToRepositoryIamPolicyMapOutputWithContext

func (o RepositoryIamPolicyMapOutput) ToRepositoryIamPolicyMapOutputWithContext(ctx context.Context) RepositoryIamPolicyMapOutput

type RepositoryIamPolicyOutput

type RepositoryIamPolicyOutput struct{ *pulumi.OutputState }

func (RepositoryIamPolicyOutput) ElementType

func (RepositoryIamPolicyOutput) ElementType() reflect.Type

func (RepositoryIamPolicyOutput) Etag

(Computed) The etag of the IAM policy.

func (RepositoryIamPolicyOutput) Location

The location for the Repository. Used to find the parent resource to bind the IAM policy to. If not specified, the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no location is specified, it is taken from the provider configuration.

func (RepositoryIamPolicyOutput) PolicyData

The policy data generated by a `organizations.getIAMPolicy` data source.

func (RepositoryIamPolicyOutput) Project

The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.

func (RepositoryIamPolicyOutput) RepositoryId

The ID for the Repository. Used to find the parent resource to bind the IAM policy to

func (RepositoryIamPolicyOutput) ToRepositoryIamPolicyOutput

func (o RepositoryIamPolicyOutput) ToRepositoryIamPolicyOutput() RepositoryIamPolicyOutput

func (RepositoryIamPolicyOutput) ToRepositoryIamPolicyOutputWithContext

func (o RepositoryIamPolicyOutput) ToRepositoryIamPolicyOutputWithContext(ctx context.Context) RepositoryIamPolicyOutput

type RepositoryIamPolicyState

type RepositoryIamPolicyState struct {
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// The location for the Repository.
	// Used to find the parent resource to bind the IAM policy to. If not specified,
	// the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
	// location is specified, it is taken from the provider configuration.
	Location pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput
	// The ID for the Repository.
	// Used to find the parent resource to bind the IAM policy to
	RepositoryId pulumi.StringPtrInput
}

func (RepositoryIamPolicyState) ElementType

func (RepositoryIamPolicyState) ElementType() reflect.Type

type RepositoryInitialConfig

type RepositoryInitialConfig struct {
	// Default branch name of the repository.
	DefaultBranch *string `pulumi:"defaultBranch"`
	// List of gitignore template names user can choose from.
	// Valid values can be viewed at https://cloud.google.com/secure-source-manager/docs/reference/rest/v1/projects.locations.repositories#initialconfig.
	Gitignores []string `pulumi:"gitignores"`
	// License template name user can choose from.
	// Valid values can be viewed at https://cloud.google.com/secure-source-manager/docs/reference/rest/v1/projects.locations.repositories#initialconfig.
	License *string `pulumi:"license"`
	// README template name.
	// Valid values can be viewed at https://cloud.google.com/secure-source-manager/docs/reference/rest/v1/projects.locations.repositories#initialconfig.
	Readme *string `pulumi:"readme"`
}

type RepositoryInitialConfigArgs

type RepositoryInitialConfigArgs struct {
	// Default branch name of the repository.
	DefaultBranch pulumi.StringPtrInput `pulumi:"defaultBranch"`
	// List of gitignore template names user can choose from.
	// Valid values can be viewed at https://cloud.google.com/secure-source-manager/docs/reference/rest/v1/projects.locations.repositories#initialconfig.
	Gitignores pulumi.StringArrayInput `pulumi:"gitignores"`
	// License template name user can choose from.
	// Valid values can be viewed at https://cloud.google.com/secure-source-manager/docs/reference/rest/v1/projects.locations.repositories#initialconfig.
	License pulumi.StringPtrInput `pulumi:"license"`
	// README template name.
	// Valid values can be viewed at https://cloud.google.com/secure-source-manager/docs/reference/rest/v1/projects.locations.repositories#initialconfig.
	Readme pulumi.StringPtrInput `pulumi:"readme"`
}

func (RepositoryInitialConfigArgs) ElementType

func (RepositoryInitialConfigArgs) ToRepositoryInitialConfigOutput

func (i RepositoryInitialConfigArgs) ToRepositoryInitialConfigOutput() RepositoryInitialConfigOutput

func (RepositoryInitialConfigArgs) ToRepositoryInitialConfigOutputWithContext

func (i RepositoryInitialConfigArgs) ToRepositoryInitialConfigOutputWithContext(ctx context.Context) RepositoryInitialConfigOutput

func (RepositoryInitialConfigArgs) ToRepositoryInitialConfigPtrOutput

func (i RepositoryInitialConfigArgs) ToRepositoryInitialConfigPtrOutput() RepositoryInitialConfigPtrOutput

func (RepositoryInitialConfigArgs) ToRepositoryInitialConfigPtrOutputWithContext

func (i RepositoryInitialConfigArgs) ToRepositoryInitialConfigPtrOutputWithContext(ctx context.Context) RepositoryInitialConfigPtrOutput

type RepositoryInitialConfigInput

type RepositoryInitialConfigInput interface {
	pulumi.Input

	ToRepositoryInitialConfigOutput() RepositoryInitialConfigOutput
	ToRepositoryInitialConfigOutputWithContext(context.Context) RepositoryInitialConfigOutput
}

RepositoryInitialConfigInput is an input type that accepts RepositoryInitialConfigArgs and RepositoryInitialConfigOutput values. You can construct a concrete instance of `RepositoryInitialConfigInput` via:

RepositoryInitialConfigArgs{...}

type RepositoryInitialConfigOutput

type RepositoryInitialConfigOutput struct{ *pulumi.OutputState }

func (RepositoryInitialConfigOutput) DefaultBranch

Default branch name of the repository.

func (RepositoryInitialConfigOutput) ElementType

func (RepositoryInitialConfigOutput) Gitignores

List of gitignore template names user can choose from. Valid values can be viewed at https://cloud.google.com/secure-source-manager/docs/reference/rest/v1/projects.locations.repositories#initialconfig.

func (RepositoryInitialConfigOutput) License

License template name user can choose from. Valid values can be viewed at https://cloud.google.com/secure-source-manager/docs/reference/rest/v1/projects.locations.repositories#initialconfig.

func (RepositoryInitialConfigOutput) ToRepositoryInitialConfigOutput

func (o RepositoryInitialConfigOutput) ToRepositoryInitialConfigOutput() RepositoryInitialConfigOutput

func (RepositoryInitialConfigOutput) ToRepositoryInitialConfigOutputWithContext

func (o RepositoryInitialConfigOutput) ToRepositoryInitialConfigOutputWithContext(ctx context.Context) RepositoryInitialConfigOutput

func (RepositoryInitialConfigOutput) ToRepositoryInitialConfigPtrOutput

func (o RepositoryInitialConfigOutput) ToRepositoryInitialConfigPtrOutput() RepositoryInitialConfigPtrOutput

func (RepositoryInitialConfigOutput) ToRepositoryInitialConfigPtrOutputWithContext

func (o RepositoryInitialConfigOutput) ToRepositoryInitialConfigPtrOutputWithContext(ctx context.Context) RepositoryInitialConfigPtrOutput

type RepositoryInitialConfigPtrInput

type RepositoryInitialConfigPtrInput interface {
	pulumi.Input

	ToRepositoryInitialConfigPtrOutput() RepositoryInitialConfigPtrOutput
	ToRepositoryInitialConfigPtrOutputWithContext(context.Context) RepositoryInitialConfigPtrOutput
}

RepositoryInitialConfigPtrInput is an input type that accepts RepositoryInitialConfigArgs, RepositoryInitialConfigPtr and RepositoryInitialConfigPtrOutput values. You can construct a concrete instance of `RepositoryInitialConfigPtrInput` via:

        RepositoryInitialConfigArgs{...}

or:

        nil

type RepositoryInitialConfigPtrOutput

type RepositoryInitialConfigPtrOutput struct{ *pulumi.OutputState }

func (RepositoryInitialConfigPtrOutput) DefaultBranch

Default branch name of the repository.

func (RepositoryInitialConfigPtrOutput) Elem

func (RepositoryInitialConfigPtrOutput) ElementType

func (RepositoryInitialConfigPtrOutput) Gitignores

List of gitignore template names user can choose from. Valid values can be viewed at https://cloud.google.com/secure-source-manager/docs/reference/rest/v1/projects.locations.repositories#initialconfig.

func (RepositoryInitialConfigPtrOutput) License

License template name user can choose from. Valid values can be viewed at https://cloud.google.com/secure-source-manager/docs/reference/rest/v1/projects.locations.repositories#initialconfig.

func (RepositoryInitialConfigPtrOutput) Readme

README template name. Valid values can be viewed at https://cloud.google.com/secure-source-manager/docs/reference/rest/v1/projects.locations.repositories#initialconfig.

func (RepositoryInitialConfigPtrOutput) ToRepositoryInitialConfigPtrOutput

func (o RepositoryInitialConfigPtrOutput) ToRepositoryInitialConfigPtrOutput() RepositoryInitialConfigPtrOutput

func (RepositoryInitialConfigPtrOutput) ToRepositoryInitialConfigPtrOutputWithContext

func (o RepositoryInitialConfigPtrOutput) ToRepositoryInitialConfigPtrOutputWithContext(ctx context.Context) RepositoryInitialConfigPtrOutput

type RepositoryInput

type RepositoryInput interface {
	pulumi.Input

	ToRepositoryOutput() RepositoryOutput
	ToRepositoryOutputWithContext(ctx context.Context) RepositoryOutput
}

type RepositoryMap

type RepositoryMap map[string]RepositoryInput

func (RepositoryMap) ElementType

func (RepositoryMap) ElementType() reflect.Type

func (RepositoryMap) ToRepositoryMapOutput

func (i RepositoryMap) ToRepositoryMapOutput() RepositoryMapOutput

func (RepositoryMap) ToRepositoryMapOutputWithContext

func (i RepositoryMap) ToRepositoryMapOutputWithContext(ctx context.Context) RepositoryMapOutput

type RepositoryMapInput

type RepositoryMapInput interface {
	pulumi.Input

	ToRepositoryMapOutput() RepositoryMapOutput
	ToRepositoryMapOutputWithContext(context.Context) RepositoryMapOutput
}

RepositoryMapInput is an input type that accepts RepositoryMap and RepositoryMapOutput values. You can construct a concrete instance of `RepositoryMapInput` via:

RepositoryMap{ "key": RepositoryArgs{...} }

type RepositoryMapOutput

type RepositoryMapOutput struct{ *pulumi.OutputState }

func (RepositoryMapOutput) ElementType

func (RepositoryMapOutput) ElementType() reflect.Type

func (RepositoryMapOutput) MapIndex

func (RepositoryMapOutput) ToRepositoryMapOutput

func (o RepositoryMapOutput) ToRepositoryMapOutput() RepositoryMapOutput

func (RepositoryMapOutput) ToRepositoryMapOutputWithContext

func (o RepositoryMapOutput) ToRepositoryMapOutputWithContext(ctx context.Context) RepositoryMapOutput

type RepositoryOutput

type RepositoryOutput struct{ *pulumi.OutputState }

func (RepositoryOutput) CreateTime

func (o RepositoryOutput) CreateTime() pulumi.StringOutput

Time the repository was created in UTC.

func (RepositoryOutput) Description

func (o RepositoryOutput) Description() pulumi.StringPtrOutput

Description of the repository, which cannot exceed 500 characters.

func (RepositoryOutput) ElementType

func (RepositoryOutput) ElementType() reflect.Type

func (RepositoryOutput) InitialConfig

Initial configurations for the repository. Structure is documented below.

func (RepositoryOutput) Instance

func (o RepositoryOutput) Instance() pulumi.StringOutput

The name of the instance in which the repository is hosted.

func (RepositoryOutput) Location

func (o RepositoryOutput) Location() pulumi.StringOutput

The location for the Repository.

func (RepositoryOutput) Name

The resource name for the Repository.

func (RepositoryOutput) Project

func (o RepositoryOutput) Project() pulumi.StringOutput

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

func (RepositoryOutput) RepositoryId

func (o RepositoryOutput) RepositoryId() pulumi.StringOutput

The ID for the Repository.

***

func (RepositoryOutput) ToRepositoryOutput

func (o RepositoryOutput) ToRepositoryOutput() RepositoryOutput

func (RepositoryOutput) ToRepositoryOutputWithContext

func (o RepositoryOutput) ToRepositoryOutputWithContext(ctx context.Context) RepositoryOutput

func (RepositoryOutput) Uid

Unique identifier of the repository.

func (RepositoryOutput) UpdateTime

func (o RepositoryOutput) UpdateTime() pulumi.StringOutput

Time the repository was updated in UTC.

func (RepositoryOutput) Uris

URIs for the repository. Structure is documented below.

type RepositoryState

type RepositoryState struct {
	// Time the repository was created in UTC.
	CreateTime pulumi.StringPtrInput
	// Description of the repository, which cannot exceed 500 characters.
	Description pulumi.StringPtrInput
	// Initial configurations for the repository.
	// Structure is documented below.
	InitialConfig RepositoryInitialConfigPtrInput
	// The name of the instance in which the repository is hosted.
	Instance pulumi.StringPtrInput
	// The location for the Repository.
	Location pulumi.StringPtrInput
	// The resource name for the Repository.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The ID for the Repository.
	//
	// ***
	RepositoryId pulumi.StringPtrInput
	// Unique identifier of the repository.
	Uid pulumi.StringPtrInput
	// Time the repository was updated in UTC.
	UpdateTime pulumi.StringPtrInput
	// URIs for the repository.
	// Structure is documented below.
	Uris RepositoryUriArrayInput
}

func (RepositoryState) ElementType

func (RepositoryState) ElementType() reflect.Type

type RepositoryUri

type RepositoryUri struct {
	// (Output)
	// API is the URI for API access.
	Api *string `pulumi:"api"`
	// (Output)
	// gitHttps is the git HTTPS URI for git operations.
	GitHttps *string `pulumi:"gitHttps"`
	// (Output)
	// HTML is the URI for the user to view the repository in a browser.
	Html *string `pulumi:"html"`
}

type RepositoryUriArgs

type RepositoryUriArgs struct {
	// (Output)
	// API is the URI for API access.
	Api pulumi.StringPtrInput `pulumi:"api"`
	// (Output)
	// gitHttps is the git HTTPS URI for git operations.
	GitHttps pulumi.StringPtrInput `pulumi:"gitHttps"`
	// (Output)
	// HTML is the URI for the user to view the repository in a browser.
	Html pulumi.StringPtrInput `pulumi:"html"`
}

func (RepositoryUriArgs) ElementType

func (RepositoryUriArgs) ElementType() reflect.Type

func (RepositoryUriArgs) ToRepositoryUriOutput

func (i RepositoryUriArgs) ToRepositoryUriOutput() RepositoryUriOutput

func (RepositoryUriArgs) ToRepositoryUriOutputWithContext

func (i RepositoryUriArgs) ToRepositoryUriOutputWithContext(ctx context.Context) RepositoryUriOutput

type RepositoryUriArray

type RepositoryUriArray []RepositoryUriInput

func (RepositoryUriArray) ElementType

func (RepositoryUriArray) ElementType() reflect.Type

func (RepositoryUriArray) ToRepositoryUriArrayOutput

func (i RepositoryUriArray) ToRepositoryUriArrayOutput() RepositoryUriArrayOutput

func (RepositoryUriArray) ToRepositoryUriArrayOutputWithContext

func (i RepositoryUriArray) ToRepositoryUriArrayOutputWithContext(ctx context.Context) RepositoryUriArrayOutput

type RepositoryUriArrayInput

type RepositoryUriArrayInput interface {
	pulumi.Input

	ToRepositoryUriArrayOutput() RepositoryUriArrayOutput
	ToRepositoryUriArrayOutputWithContext(context.Context) RepositoryUriArrayOutput
}

RepositoryUriArrayInput is an input type that accepts RepositoryUriArray and RepositoryUriArrayOutput values. You can construct a concrete instance of `RepositoryUriArrayInput` via:

RepositoryUriArray{ RepositoryUriArgs{...} }

type RepositoryUriArrayOutput

type RepositoryUriArrayOutput struct{ *pulumi.OutputState }

func (RepositoryUriArrayOutput) ElementType

func (RepositoryUriArrayOutput) ElementType() reflect.Type

func (RepositoryUriArrayOutput) Index

func (RepositoryUriArrayOutput) ToRepositoryUriArrayOutput

func (o RepositoryUriArrayOutput) ToRepositoryUriArrayOutput() RepositoryUriArrayOutput

func (RepositoryUriArrayOutput) ToRepositoryUriArrayOutputWithContext

func (o RepositoryUriArrayOutput) ToRepositoryUriArrayOutputWithContext(ctx context.Context) RepositoryUriArrayOutput

type RepositoryUriInput

type RepositoryUriInput interface {
	pulumi.Input

	ToRepositoryUriOutput() RepositoryUriOutput
	ToRepositoryUriOutputWithContext(context.Context) RepositoryUriOutput
}

RepositoryUriInput is an input type that accepts RepositoryUriArgs and RepositoryUriOutput values. You can construct a concrete instance of `RepositoryUriInput` via:

RepositoryUriArgs{...}

type RepositoryUriOutput

type RepositoryUriOutput struct{ *pulumi.OutputState }

func (RepositoryUriOutput) Api

(Output) API is the URI for API access.

func (RepositoryUriOutput) ElementType

func (RepositoryUriOutput) ElementType() reflect.Type

func (RepositoryUriOutput) GitHttps

(Output) gitHttps is the git HTTPS URI for git operations.

func (RepositoryUriOutput) Html

(Output) HTML is the URI for the user to view the repository in a browser.

func (RepositoryUriOutput) ToRepositoryUriOutput

func (o RepositoryUriOutput) ToRepositoryUriOutput() RepositoryUriOutput

func (RepositoryUriOutput) ToRepositoryUriOutputWithContext

func (o RepositoryUriOutput) ToRepositoryUriOutputWithContext(ctx context.Context) RepositoryUriOutput

Jump to

Keyboard shortcuts

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