resourcemanager

package
v4.15.0 Latest Latest
Warning

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

Go to latest
Published: Mar 15, 2021 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 Lien

type Lien struct {
	pulumi.CustomResourceState

	// Time of creation
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// A system-generated unique identifier for this Lien.
	Name pulumi.StringOutput `pulumi:"name"`
	// A stable, user-visible/meaningful string identifying the origin
	// of the Lien, intended to be inspected programmatically. Maximum length of
	// 200 characters.
	Origin pulumi.StringOutput `pulumi:"origin"`
	// A reference to the resource this Lien is attached to.
	// The server will validate the parent against those for which Liens are supported.
	// Since a variety of objects can have Liens against them, you must provide the type
	// prefix (e.g. "projects/my-project-name").
	Parent pulumi.StringOutput `pulumi:"parent"`
	// Concise user-visible strings indicating why an action cannot be performed
	// on a resource. Maximum length of 200 characters.
	Reason pulumi.StringOutput `pulumi:"reason"`
	// The types of operations which should be blocked as a result of this Lien.
	// Each value should correspond to an IAM permission. The server will validate
	// the permissions against those for which Liens are supported.  An empty
	// list is meaningless and will be rejected.
	// e.g. ['resourcemanager.projects.delete']
	Restrictions pulumi.StringArrayOutput `pulumi:"restrictions"`
}

A Lien represents an encumbrance on the actions that can be performed on a resource.

## Example Usage ### Resource Manager Lien

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		project, err := organizations.NewProject(ctx, "project", &organizations.ProjectArgs{
			ProjectId: pulumi.String("staging-project"),
		})
		if err != nil {
			return err
		}
		_, err = resourcemanager.NewLien(ctx, "lien", &resourcemanager.LienArgs{
			Origin: pulumi.String("machine-readable-explanation"),
			Parent: project.Number.ApplyT(func(number string) (string, error) {
				return fmt.Sprintf("%v%v", "projects/", number), nil
			}).(pulumi.StringOutput),
			Reason: pulumi.String("This project is an important environment"),
			Restrictions: pulumi.StringArray{
				pulumi.String("resourcemanager.projects.delete"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Lien can be imported using any of these accepted formats

```sh

$ pulumi import gcp:resourcemanager/lien:Lien default {{parent}}/{{name}}

```

func GetLien

func GetLien(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LienState, opts ...pulumi.ResourceOption) (*Lien, error)

GetLien gets an existing Lien 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 NewLien

func NewLien(ctx *pulumi.Context,
	name string, args *LienArgs, opts ...pulumi.ResourceOption) (*Lien, error)

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

func (*Lien) ElementType added in v4.4.0

func (*Lien) ElementType() reflect.Type

func (*Lien) ToLienOutput added in v4.4.0

func (i *Lien) ToLienOutput() LienOutput

func (*Lien) ToLienOutputWithContext added in v4.4.0

func (i *Lien) ToLienOutputWithContext(ctx context.Context) LienOutput

func (*Lien) ToLienPtrOutput added in v4.11.1

func (i *Lien) ToLienPtrOutput() LienPtrOutput

func (*Lien) ToLienPtrOutputWithContext added in v4.11.1

func (i *Lien) ToLienPtrOutputWithContext(ctx context.Context) LienPtrOutput

type LienArgs

type LienArgs struct {
	// A stable, user-visible/meaningful string identifying the origin
	// of the Lien, intended to be inspected programmatically. Maximum length of
	// 200 characters.
	Origin pulumi.StringInput
	// A reference to the resource this Lien is attached to.
	// The server will validate the parent against those for which Liens are supported.
	// Since a variety of objects can have Liens against them, you must provide the type
	// prefix (e.g. "projects/my-project-name").
	Parent pulumi.StringInput
	// Concise user-visible strings indicating why an action cannot be performed
	// on a resource. Maximum length of 200 characters.
	Reason pulumi.StringInput
	// The types of operations which should be blocked as a result of this Lien.
	// Each value should correspond to an IAM permission. The server will validate
	// the permissions against those for which Liens are supported.  An empty
	// list is meaningless and will be rejected.
	// e.g. ['resourcemanager.projects.delete']
	Restrictions pulumi.StringArrayInput
}

The set of arguments for constructing a Lien resource.

func (LienArgs) ElementType

func (LienArgs) ElementType() reflect.Type

type LienArray added in v4.11.1

type LienArray []LienInput

func (LienArray) ElementType added in v4.11.1

func (LienArray) ElementType() reflect.Type

func (LienArray) ToLienArrayOutput added in v4.11.1

func (i LienArray) ToLienArrayOutput() LienArrayOutput

func (LienArray) ToLienArrayOutputWithContext added in v4.11.1

func (i LienArray) ToLienArrayOutputWithContext(ctx context.Context) LienArrayOutput

type LienArrayInput added in v4.11.1

type LienArrayInput interface {
	pulumi.Input

	ToLienArrayOutput() LienArrayOutput
	ToLienArrayOutputWithContext(context.Context) LienArrayOutput
}

LienArrayInput is an input type that accepts LienArray and LienArrayOutput values. You can construct a concrete instance of `LienArrayInput` via:

LienArray{ LienArgs{...} }

type LienArrayOutput added in v4.11.1

type LienArrayOutput struct{ *pulumi.OutputState }

func (LienArrayOutput) ElementType added in v4.11.1

func (LienArrayOutput) ElementType() reflect.Type

func (LienArrayOutput) Index added in v4.11.1

func (LienArrayOutput) ToLienArrayOutput added in v4.11.1

func (o LienArrayOutput) ToLienArrayOutput() LienArrayOutput

func (LienArrayOutput) ToLienArrayOutputWithContext added in v4.11.1

func (o LienArrayOutput) ToLienArrayOutputWithContext(ctx context.Context) LienArrayOutput

type LienInput added in v4.4.0

type LienInput interface {
	pulumi.Input

	ToLienOutput() LienOutput
	ToLienOutputWithContext(ctx context.Context) LienOutput
}

type LienMap added in v4.11.1

type LienMap map[string]LienInput

func (LienMap) ElementType added in v4.11.1

func (LienMap) ElementType() reflect.Type

func (LienMap) ToLienMapOutput added in v4.11.1

func (i LienMap) ToLienMapOutput() LienMapOutput

func (LienMap) ToLienMapOutputWithContext added in v4.11.1

func (i LienMap) ToLienMapOutputWithContext(ctx context.Context) LienMapOutput

type LienMapInput added in v4.11.1

type LienMapInput interface {
	pulumi.Input

	ToLienMapOutput() LienMapOutput
	ToLienMapOutputWithContext(context.Context) LienMapOutput
}

LienMapInput is an input type that accepts LienMap and LienMapOutput values. You can construct a concrete instance of `LienMapInput` via:

LienMap{ "key": LienArgs{...} }

type LienMapOutput added in v4.11.1

type LienMapOutput struct{ *pulumi.OutputState }

func (LienMapOutput) ElementType added in v4.11.1

func (LienMapOutput) ElementType() reflect.Type

func (LienMapOutput) MapIndex added in v4.11.1

func (LienMapOutput) ToLienMapOutput added in v4.11.1

func (o LienMapOutput) ToLienMapOutput() LienMapOutput

func (LienMapOutput) ToLienMapOutputWithContext added in v4.11.1

func (o LienMapOutput) ToLienMapOutputWithContext(ctx context.Context) LienMapOutput

type LienOutput added in v4.4.0

type LienOutput struct {
	*pulumi.OutputState
}

func (LienOutput) ElementType added in v4.4.0

func (LienOutput) ElementType() reflect.Type

func (LienOutput) ToLienOutput added in v4.4.0

func (o LienOutput) ToLienOutput() LienOutput

func (LienOutput) ToLienOutputWithContext added in v4.4.0

func (o LienOutput) ToLienOutputWithContext(ctx context.Context) LienOutput

func (LienOutput) ToLienPtrOutput added in v4.11.1

func (o LienOutput) ToLienPtrOutput() LienPtrOutput

func (LienOutput) ToLienPtrOutputWithContext added in v4.11.1

func (o LienOutput) ToLienPtrOutputWithContext(ctx context.Context) LienPtrOutput

type LienPtrInput added in v4.11.1

type LienPtrInput interface {
	pulumi.Input

	ToLienPtrOutput() LienPtrOutput
	ToLienPtrOutputWithContext(ctx context.Context) LienPtrOutput
}

type LienPtrOutput added in v4.11.1

type LienPtrOutput struct {
	*pulumi.OutputState
}

func (LienPtrOutput) ElementType added in v4.11.1

func (LienPtrOutput) ElementType() reflect.Type

func (LienPtrOutput) ToLienPtrOutput added in v4.11.1

func (o LienPtrOutput) ToLienPtrOutput() LienPtrOutput

func (LienPtrOutput) ToLienPtrOutputWithContext added in v4.11.1

func (o LienPtrOutput) ToLienPtrOutputWithContext(ctx context.Context) LienPtrOutput

type LienState

type LienState struct {
	// Time of creation
	CreateTime pulumi.StringPtrInput
	// A system-generated unique identifier for this Lien.
	Name pulumi.StringPtrInput
	// A stable, user-visible/meaningful string identifying the origin
	// of the Lien, intended to be inspected programmatically. Maximum length of
	// 200 characters.
	Origin pulumi.StringPtrInput
	// A reference to the resource this Lien is attached to.
	// The server will validate the parent against those for which Liens are supported.
	// Since a variety of objects can have Liens against them, you must provide the type
	// prefix (e.g. "projects/my-project-name").
	Parent pulumi.StringPtrInput
	// Concise user-visible strings indicating why an action cannot be performed
	// on a resource. Maximum length of 200 characters.
	Reason pulumi.StringPtrInput
	// The types of operations which should be blocked as a result of this Lien.
	// Each value should correspond to an IAM permission. The server will validate
	// the permissions against those for which Liens are supported.  An empty
	// list is meaningless and will be rejected.
	// e.g. ['resourcemanager.projects.delete']
	Restrictions pulumi.StringArrayInput
}

func (LienState) ElementType

func (LienState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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