resourcemanager

package
v4.7.0 Latest Latest
Warning

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

Go to latest
Published: Jan 12, 2021 License: Apache-2.0 Imports: 4 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

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 LienInput added in v4.4.0

type LienInput interface {
	pulumi.Input

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

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

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