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/v3/go/gcp/organizations" "github.com/pulumi/pulumi-gcp/sdk/v3/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 }) }
```
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).
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 ¶
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 ¶
Click to show internal directories.
Click to hide internal directories.