management

package
v4.8.0 Latest Latest
Warning

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

Go to latest
Published: Jun 23, 2021 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Group

type Group struct {
	pulumi.CustomResourceState

	// A friendly name for this Management Group. If not specified, this'll be the same as the `name`.
	DisplayName pulumi.StringOutput `pulumi:"displayName"`
	// The name or UUID for this Management Group, which needs to be unique across your tenant. A new UUID will be generated if not provided. Changing this forces a new resource to be created.
	//
	// Deprecated: Deprecated in favour of `name`
	GroupId pulumi.StringOutput `pulumi:"groupId"`
	// The name or UUID for this Management Group, which needs to be unique across your tenant. A new UUID will be generated if not provided. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the Parent Management Group. Changing this forces a new resource to be created.
	ParentManagementGroupId pulumi.StringOutput `pulumi:"parentManagementGroupId"`
	// A list of Subscription GUIDs which should be assigned to the Management Group.
	SubscriptionIds pulumi.StringArrayOutput `pulumi:"subscriptionIds"`
}

Manages a Management Group.

!> **Note:** Configuring `subscriptionIds` is not supported when using the `management.GroupSubscriptionAssociation` resource, results will be unpredictable.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/management"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.LookupSubscription(ctx, nil, nil)
		if err != nil {
			return err
		}
		exampleParent, err := management.NewGroup(ctx, "exampleParent", &management.GroupArgs{
			DisplayName: pulumi.String("ParentGroup"),
			SubscriptionIds: pulumi.StringArray{
				pulumi.String(current.SubscriptionId),
			},
		})
		if err != nil {
			return err
		}
		_, err = management.NewGroup(ctx, "exampleChild", &management.GroupArgs{
			DisplayName:             pulumi.String("ChildGroup"),
			ParentManagementGroupId: exampleParent.ID(),
			SubscriptionIds: pulumi.StringArray{
				pulumi.String(current.SubscriptionId),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Management Groups can be imported using the `management group resource id`, e.g.

```sh

$ pulumi import azure:management/group:Group example /providers/Microsoft.Management/managementGroups/group1

```

func GetGroup

func GetGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GroupState, opts ...pulumi.ResourceOption) (*Group, error)

GetGroup gets an existing Group 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 NewGroup

func NewGroup(ctx *pulumi.Context,
	name string, args *GroupArgs, opts ...pulumi.ResourceOption) (*Group, error)

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

func (*Group) ElementType

func (*Group) ElementType() reflect.Type

func (*Group) ToGroupOutput

func (i *Group) ToGroupOutput() GroupOutput

func (*Group) ToGroupOutputWithContext

func (i *Group) ToGroupOutputWithContext(ctx context.Context) GroupOutput

func (*Group) ToGroupPtrOutput

func (i *Group) ToGroupPtrOutput() GroupPtrOutput

func (*Group) ToGroupPtrOutputWithContext

func (i *Group) ToGroupPtrOutputWithContext(ctx context.Context) GroupPtrOutput

type GroupArgs

type GroupArgs struct {
	// A friendly name for this Management Group. If not specified, this'll be the same as the `name`.
	DisplayName pulumi.StringPtrInput
	// The name or UUID for this Management Group, which needs to be unique across your tenant. A new UUID will be generated if not provided. Changing this forces a new resource to be created.
	//
	// Deprecated: Deprecated in favour of `name`
	GroupId pulumi.StringPtrInput
	// The name or UUID for this Management Group, which needs to be unique across your tenant. A new UUID will be generated if not provided. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The ID of the Parent Management Group. Changing this forces a new resource to be created.
	ParentManagementGroupId pulumi.StringPtrInput
	// A list of Subscription GUIDs which should be assigned to the Management Group.
	SubscriptionIds pulumi.StringArrayInput
}

The set of arguments for constructing a Group resource.

func (GroupArgs) ElementType

func (GroupArgs) ElementType() reflect.Type

type GroupArray

type GroupArray []GroupInput

func (GroupArray) ElementType

func (GroupArray) ElementType() reflect.Type

func (GroupArray) ToGroupArrayOutput

func (i GroupArray) ToGroupArrayOutput() GroupArrayOutput

func (GroupArray) ToGroupArrayOutputWithContext

func (i GroupArray) ToGroupArrayOutputWithContext(ctx context.Context) GroupArrayOutput

type GroupArrayInput

type GroupArrayInput interface {
	pulumi.Input

	ToGroupArrayOutput() GroupArrayOutput
	ToGroupArrayOutputWithContext(context.Context) GroupArrayOutput
}

GroupArrayInput is an input type that accepts GroupArray and GroupArrayOutput values. You can construct a concrete instance of `GroupArrayInput` via:

GroupArray{ GroupArgs{...} }

type GroupArrayOutput

type GroupArrayOutput struct{ *pulumi.OutputState }

func (GroupArrayOutput) ElementType

func (GroupArrayOutput) ElementType() reflect.Type

func (GroupArrayOutput) Index

func (GroupArrayOutput) ToGroupArrayOutput

func (o GroupArrayOutput) ToGroupArrayOutput() GroupArrayOutput

func (GroupArrayOutput) ToGroupArrayOutputWithContext

func (o GroupArrayOutput) ToGroupArrayOutputWithContext(ctx context.Context) GroupArrayOutput

type GroupInput

type GroupInput interface {
	pulumi.Input

	ToGroupOutput() GroupOutput
	ToGroupOutputWithContext(ctx context.Context) GroupOutput
}

type GroupMap

type GroupMap map[string]GroupInput

func (GroupMap) ElementType

func (GroupMap) ElementType() reflect.Type

func (GroupMap) ToGroupMapOutput

func (i GroupMap) ToGroupMapOutput() GroupMapOutput

func (GroupMap) ToGroupMapOutputWithContext

func (i GroupMap) ToGroupMapOutputWithContext(ctx context.Context) GroupMapOutput

type GroupMapInput

type GroupMapInput interface {
	pulumi.Input

	ToGroupMapOutput() GroupMapOutput
	ToGroupMapOutputWithContext(context.Context) GroupMapOutput
}

GroupMapInput is an input type that accepts GroupMap and GroupMapOutput values. You can construct a concrete instance of `GroupMapInput` via:

GroupMap{ "key": GroupArgs{...} }

type GroupMapOutput

type GroupMapOutput struct{ *pulumi.OutputState }

func (GroupMapOutput) ElementType

func (GroupMapOutput) ElementType() reflect.Type

func (GroupMapOutput) MapIndex

func (GroupMapOutput) ToGroupMapOutput

func (o GroupMapOutput) ToGroupMapOutput() GroupMapOutput

func (GroupMapOutput) ToGroupMapOutputWithContext

func (o GroupMapOutput) ToGroupMapOutputWithContext(ctx context.Context) GroupMapOutput

type GroupOutput

type GroupOutput struct {
	*pulumi.OutputState
}

func (GroupOutput) ElementType

func (GroupOutput) ElementType() reflect.Type

func (GroupOutput) ToGroupOutput

func (o GroupOutput) ToGroupOutput() GroupOutput

func (GroupOutput) ToGroupOutputWithContext

func (o GroupOutput) ToGroupOutputWithContext(ctx context.Context) GroupOutput

func (GroupOutput) ToGroupPtrOutput

func (o GroupOutput) ToGroupPtrOutput() GroupPtrOutput

func (GroupOutput) ToGroupPtrOutputWithContext

func (o GroupOutput) ToGroupPtrOutputWithContext(ctx context.Context) GroupPtrOutput

type GroupPtrInput

type GroupPtrInput interface {
	pulumi.Input

	ToGroupPtrOutput() GroupPtrOutput
	ToGroupPtrOutputWithContext(ctx context.Context) GroupPtrOutput
}

type GroupPtrOutput

type GroupPtrOutput struct {
	*pulumi.OutputState
}

func (GroupPtrOutput) ElementType

func (GroupPtrOutput) ElementType() reflect.Type

func (GroupPtrOutput) ToGroupPtrOutput

func (o GroupPtrOutput) ToGroupPtrOutput() GroupPtrOutput

func (GroupPtrOutput) ToGroupPtrOutputWithContext

func (o GroupPtrOutput) ToGroupPtrOutputWithContext(ctx context.Context) GroupPtrOutput

type GroupState

type GroupState struct {
	// A friendly name for this Management Group. If not specified, this'll be the same as the `name`.
	DisplayName pulumi.StringPtrInput
	// The name or UUID for this Management Group, which needs to be unique across your tenant. A new UUID will be generated if not provided. Changing this forces a new resource to be created.
	//
	// Deprecated: Deprecated in favour of `name`
	GroupId pulumi.StringPtrInput
	// The name or UUID for this Management Group, which needs to be unique across your tenant. A new UUID will be generated if not provided. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The ID of the Parent Management Group. Changing this forces a new resource to be created.
	ParentManagementGroupId pulumi.StringPtrInput
	// A list of Subscription GUIDs which should be assigned to the Management Group.
	SubscriptionIds pulumi.StringArrayInput
}

func (GroupState) ElementType

func (GroupState) ElementType() reflect.Type

type GroupSubscriptionAssociate

type GroupSubscriptionAssociate struct {
	pulumi.CustomResourceState

	// The ID of the Management Group to associate the Subscription with. Changing this forces a new Management to be created.
	ManagementGroupId pulumi.StringOutput `pulumi:"managementGroupId"`
	// The ID of the Subscription to be associated with the Management Group. Changing this forces a new Management to be created.
	SubscriptionId pulumi.StringOutput `pulumi:"subscriptionId"`
}

Manages a Management Group Subscription Association.

!> **Note:** When using this resource, configuring `subscriptionIds` on the `management.Group` resource is not supported.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/management"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "exampleManagementGroup"
		exampleGroup, err := management.LookupGroup(ctx, &management.LookupGroupArgs{
			Name: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		opt1 := "12345678-1234-1234-1234-123456789012"
		exampleSubscription, err := core.LookupSubscription(ctx, &core.LookupSubscriptionArgs{
			SubscriptionId: &opt1,
		}, nil)
		if err != nil {
			return err
		}
		_, err = management.NewGroupSubscriptionAssociate(ctx, "exampleGroupSubscriptionAssociate", &management.GroupSubscriptionAssociateArgs{
			ManagementGroupId: pulumi.String(exampleGroup.Id),
			SubscriptionId:    pulumi.String(exampleSubscription.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Managements can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:management/groupSubscriptionAssociate:GroupSubscriptionAssociate example /managementGroup/MyManagementGroup/subscription/12345678-1234-1234-1234-123456789012

```

func GetGroupSubscriptionAssociate

func GetGroupSubscriptionAssociate(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GroupSubscriptionAssociateState, opts ...pulumi.ResourceOption) (*GroupSubscriptionAssociate, error)

GetGroupSubscriptionAssociate gets an existing GroupSubscriptionAssociate 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 NewGroupSubscriptionAssociate

func NewGroupSubscriptionAssociate(ctx *pulumi.Context,
	name string, args *GroupSubscriptionAssociateArgs, opts ...pulumi.ResourceOption) (*GroupSubscriptionAssociate, error)

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

func (*GroupSubscriptionAssociate) ElementType

func (*GroupSubscriptionAssociate) ElementType() reflect.Type

func (*GroupSubscriptionAssociate) ToGroupSubscriptionAssociateOutput

func (i *GroupSubscriptionAssociate) ToGroupSubscriptionAssociateOutput() GroupSubscriptionAssociateOutput

func (*GroupSubscriptionAssociate) ToGroupSubscriptionAssociateOutputWithContext

func (i *GroupSubscriptionAssociate) ToGroupSubscriptionAssociateOutputWithContext(ctx context.Context) GroupSubscriptionAssociateOutput

func (*GroupSubscriptionAssociate) ToGroupSubscriptionAssociatePtrOutput

func (i *GroupSubscriptionAssociate) ToGroupSubscriptionAssociatePtrOutput() GroupSubscriptionAssociatePtrOutput

func (*GroupSubscriptionAssociate) ToGroupSubscriptionAssociatePtrOutputWithContext

func (i *GroupSubscriptionAssociate) ToGroupSubscriptionAssociatePtrOutputWithContext(ctx context.Context) GroupSubscriptionAssociatePtrOutput

type GroupSubscriptionAssociateArgs

type GroupSubscriptionAssociateArgs struct {
	// The ID of the Management Group to associate the Subscription with. Changing this forces a new Management to be created.
	ManagementGroupId pulumi.StringInput
	// The ID of the Subscription to be associated with the Management Group. Changing this forces a new Management to be created.
	SubscriptionId pulumi.StringInput
}

The set of arguments for constructing a GroupSubscriptionAssociate resource.

func (GroupSubscriptionAssociateArgs) ElementType

type GroupSubscriptionAssociateArray

type GroupSubscriptionAssociateArray []GroupSubscriptionAssociateInput

func (GroupSubscriptionAssociateArray) ElementType

func (GroupSubscriptionAssociateArray) ToGroupSubscriptionAssociateArrayOutput

func (i GroupSubscriptionAssociateArray) ToGroupSubscriptionAssociateArrayOutput() GroupSubscriptionAssociateArrayOutput

func (GroupSubscriptionAssociateArray) ToGroupSubscriptionAssociateArrayOutputWithContext

func (i GroupSubscriptionAssociateArray) ToGroupSubscriptionAssociateArrayOutputWithContext(ctx context.Context) GroupSubscriptionAssociateArrayOutput

type GroupSubscriptionAssociateArrayInput

type GroupSubscriptionAssociateArrayInput interface {
	pulumi.Input

	ToGroupSubscriptionAssociateArrayOutput() GroupSubscriptionAssociateArrayOutput
	ToGroupSubscriptionAssociateArrayOutputWithContext(context.Context) GroupSubscriptionAssociateArrayOutput
}

GroupSubscriptionAssociateArrayInput is an input type that accepts GroupSubscriptionAssociateArray and GroupSubscriptionAssociateArrayOutput values. You can construct a concrete instance of `GroupSubscriptionAssociateArrayInput` via:

GroupSubscriptionAssociateArray{ GroupSubscriptionAssociateArgs{...} }

type GroupSubscriptionAssociateArrayOutput

type GroupSubscriptionAssociateArrayOutput struct{ *pulumi.OutputState }

func (GroupSubscriptionAssociateArrayOutput) ElementType

func (GroupSubscriptionAssociateArrayOutput) Index

func (GroupSubscriptionAssociateArrayOutput) ToGroupSubscriptionAssociateArrayOutput

func (o GroupSubscriptionAssociateArrayOutput) ToGroupSubscriptionAssociateArrayOutput() GroupSubscriptionAssociateArrayOutput

func (GroupSubscriptionAssociateArrayOutput) ToGroupSubscriptionAssociateArrayOutputWithContext

func (o GroupSubscriptionAssociateArrayOutput) ToGroupSubscriptionAssociateArrayOutputWithContext(ctx context.Context) GroupSubscriptionAssociateArrayOutput

type GroupSubscriptionAssociateInput

type GroupSubscriptionAssociateInput interface {
	pulumi.Input

	ToGroupSubscriptionAssociateOutput() GroupSubscriptionAssociateOutput
	ToGroupSubscriptionAssociateOutputWithContext(ctx context.Context) GroupSubscriptionAssociateOutput
}

type GroupSubscriptionAssociateMap

type GroupSubscriptionAssociateMap map[string]GroupSubscriptionAssociateInput

func (GroupSubscriptionAssociateMap) ElementType

func (GroupSubscriptionAssociateMap) ToGroupSubscriptionAssociateMapOutput

func (i GroupSubscriptionAssociateMap) ToGroupSubscriptionAssociateMapOutput() GroupSubscriptionAssociateMapOutput

func (GroupSubscriptionAssociateMap) ToGroupSubscriptionAssociateMapOutputWithContext

func (i GroupSubscriptionAssociateMap) ToGroupSubscriptionAssociateMapOutputWithContext(ctx context.Context) GroupSubscriptionAssociateMapOutput

type GroupSubscriptionAssociateMapInput

type GroupSubscriptionAssociateMapInput interface {
	pulumi.Input

	ToGroupSubscriptionAssociateMapOutput() GroupSubscriptionAssociateMapOutput
	ToGroupSubscriptionAssociateMapOutputWithContext(context.Context) GroupSubscriptionAssociateMapOutput
}

GroupSubscriptionAssociateMapInput is an input type that accepts GroupSubscriptionAssociateMap and GroupSubscriptionAssociateMapOutput values. You can construct a concrete instance of `GroupSubscriptionAssociateMapInput` via:

GroupSubscriptionAssociateMap{ "key": GroupSubscriptionAssociateArgs{...} }

type GroupSubscriptionAssociateMapOutput

type GroupSubscriptionAssociateMapOutput struct{ *pulumi.OutputState }

func (GroupSubscriptionAssociateMapOutput) ElementType

func (GroupSubscriptionAssociateMapOutput) MapIndex

func (GroupSubscriptionAssociateMapOutput) ToGroupSubscriptionAssociateMapOutput

func (o GroupSubscriptionAssociateMapOutput) ToGroupSubscriptionAssociateMapOutput() GroupSubscriptionAssociateMapOutput

func (GroupSubscriptionAssociateMapOutput) ToGroupSubscriptionAssociateMapOutputWithContext

func (o GroupSubscriptionAssociateMapOutput) ToGroupSubscriptionAssociateMapOutputWithContext(ctx context.Context) GroupSubscriptionAssociateMapOutput

type GroupSubscriptionAssociateOutput

type GroupSubscriptionAssociateOutput struct {
	*pulumi.OutputState
}

func (GroupSubscriptionAssociateOutput) ElementType

func (GroupSubscriptionAssociateOutput) ToGroupSubscriptionAssociateOutput

func (o GroupSubscriptionAssociateOutput) ToGroupSubscriptionAssociateOutput() GroupSubscriptionAssociateOutput

func (GroupSubscriptionAssociateOutput) ToGroupSubscriptionAssociateOutputWithContext

func (o GroupSubscriptionAssociateOutput) ToGroupSubscriptionAssociateOutputWithContext(ctx context.Context) GroupSubscriptionAssociateOutput

func (GroupSubscriptionAssociateOutput) ToGroupSubscriptionAssociatePtrOutput

func (o GroupSubscriptionAssociateOutput) ToGroupSubscriptionAssociatePtrOutput() GroupSubscriptionAssociatePtrOutput

func (GroupSubscriptionAssociateOutput) ToGroupSubscriptionAssociatePtrOutputWithContext

func (o GroupSubscriptionAssociateOutput) ToGroupSubscriptionAssociatePtrOutputWithContext(ctx context.Context) GroupSubscriptionAssociatePtrOutput

type GroupSubscriptionAssociatePtrInput

type GroupSubscriptionAssociatePtrInput interface {
	pulumi.Input

	ToGroupSubscriptionAssociatePtrOutput() GroupSubscriptionAssociatePtrOutput
	ToGroupSubscriptionAssociatePtrOutputWithContext(ctx context.Context) GroupSubscriptionAssociatePtrOutput
}

type GroupSubscriptionAssociatePtrOutput

type GroupSubscriptionAssociatePtrOutput struct {
	*pulumi.OutputState
}

func (GroupSubscriptionAssociatePtrOutput) ElementType

func (GroupSubscriptionAssociatePtrOutput) ToGroupSubscriptionAssociatePtrOutput

func (o GroupSubscriptionAssociatePtrOutput) ToGroupSubscriptionAssociatePtrOutput() GroupSubscriptionAssociatePtrOutput

func (GroupSubscriptionAssociatePtrOutput) ToGroupSubscriptionAssociatePtrOutputWithContext

func (o GroupSubscriptionAssociatePtrOutput) ToGroupSubscriptionAssociatePtrOutputWithContext(ctx context.Context) GroupSubscriptionAssociatePtrOutput

type GroupSubscriptionAssociateState

type GroupSubscriptionAssociateState struct {
	// The ID of the Management Group to associate the Subscription with. Changing this forces a new Management to be created.
	ManagementGroupId pulumi.StringPtrInput
	// The ID of the Subscription to be associated with the Management Group. Changing this forces a new Management to be created.
	SubscriptionId pulumi.StringPtrInput
}

func (GroupSubscriptionAssociateState) ElementType

type GroupSubscriptionAssociation

type GroupSubscriptionAssociation struct {
	pulumi.CustomResourceState

	// The ID of the Management Group to associate the Subscription with. Changing this forces a new Management to be created.
	ManagementGroupId pulumi.StringOutput `pulumi:"managementGroupId"`
	// The ID of the Subscription to be associated with the Management Group. Changing this forces a new Management to be created.
	SubscriptionId pulumi.StringOutput `pulumi:"subscriptionId"`
}

Manages a Management Group Subscription Association.

!> **Note:** When using this resource, configuring `subscriptionIds` on the `management.Group` resource is not supported.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/management"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "exampleManagementGroup"
		exampleGroup, err := management.LookupGroup(ctx, &management.LookupGroupArgs{
			Name: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		opt1 := "12345678-1234-1234-1234-123456789012"
		exampleSubscription, err := core.LookupSubscription(ctx, &core.LookupSubscriptionArgs{
			SubscriptionId: &opt1,
		}, nil)
		if err != nil {
			return err
		}
		_, err = management.NewGroupSubscriptionAssociation(ctx, "exampleGroupSubscriptionAssociation", &management.GroupSubscriptionAssociationArgs{
			ManagementGroupId: pulumi.String(exampleGroup.Id),
			SubscriptionId:    pulumi.String(exampleSubscription.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Managements can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:management/groupSubscriptionAssociation:GroupSubscriptionAssociation example /managementGroup/MyManagementGroup/subscription/12345678-1234-1234-1234-123456789012

```

func GetGroupSubscriptionAssociation

func GetGroupSubscriptionAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GroupSubscriptionAssociationState, opts ...pulumi.ResourceOption) (*GroupSubscriptionAssociation, error)

GetGroupSubscriptionAssociation gets an existing GroupSubscriptionAssociation 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 NewGroupSubscriptionAssociation

func NewGroupSubscriptionAssociation(ctx *pulumi.Context,
	name string, args *GroupSubscriptionAssociationArgs, opts ...pulumi.ResourceOption) (*GroupSubscriptionAssociation, error)

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

func (*GroupSubscriptionAssociation) ElementType

func (*GroupSubscriptionAssociation) ElementType() reflect.Type

func (*GroupSubscriptionAssociation) ToGroupSubscriptionAssociationOutput

func (i *GroupSubscriptionAssociation) ToGroupSubscriptionAssociationOutput() GroupSubscriptionAssociationOutput

func (*GroupSubscriptionAssociation) ToGroupSubscriptionAssociationOutputWithContext

func (i *GroupSubscriptionAssociation) ToGroupSubscriptionAssociationOutputWithContext(ctx context.Context) GroupSubscriptionAssociationOutput

func (*GroupSubscriptionAssociation) ToGroupSubscriptionAssociationPtrOutput

func (i *GroupSubscriptionAssociation) ToGroupSubscriptionAssociationPtrOutput() GroupSubscriptionAssociationPtrOutput

func (*GroupSubscriptionAssociation) ToGroupSubscriptionAssociationPtrOutputWithContext

func (i *GroupSubscriptionAssociation) ToGroupSubscriptionAssociationPtrOutputWithContext(ctx context.Context) GroupSubscriptionAssociationPtrOutput

type GroupSubscriptionAssociationArgs

type GroupSubscriptionAssociationArgs struct {
	// The ID of the Management Group to associate the Subscription with. Changing this forces a new Management to be created.
	ManagementGroupId pulumi.StringInput
	// The ID of the Subscription to be associated with the Management Group. Changing this forces a new Management to be created.
	SubscriptionId pulumi.StringInput
}

The set of arguments for constructing a GroupSubscriptionAssociation resource.

func (GroupSubscriptionAssociationArgs) ElementType

type GroupSubscriptionAssociationArray

type GroupSubscriptionAssociationArray []GroupSubscriptionAssociationInput

func (GroupSubscriptionAssociationArray) ElementType

func (GroupSubscriptionAssociationArray) ToGroupSubscriptionAssociationArrayOutput

func (i GroupSubscriptionAssociationArray) ToGroupSubscriptionAssociationArrayOutput() GroupSubscriptionAssociationArrayOutput

func (GroupSubscriptionAssociationArray) ToGroupSubscriptionAssociationArrayOutputWithContext

func (i GroupSubscriptionAssociationArray) ToGroupSubscriptionAssociationArrayOutputWithContext(ctx context.Context) GroupSubscriptionAssociationArrayOutput

type GroupSubscriptionAssociationArrayInput

type GroupSubscriptionAssociationArrayInput interface {
	pulumi.Input

	ToGroupSubscriptionAssociationArrayOutput() GroupSubscriptionAssociationArrayOutput
	ToGroupSubscriptionAssociationArrayOutputWithContext(context.Context) GroupSubscriptionAssociationArrayOutput
}

GroupSubscriptionAssociationArrayInput is an input type that accepts GroupSubscriptionAssociationArray and GroupSubscriptionAssociationArrayOutput values. You can construct a concrete instance of `GroupSubscriptionAssociationArrayInput` via:

GroupSubscriptionAssociationArray{ GroupSubscriptionAssociationArgs{...} }

type GroupSubscriptionAssociationArrayOutput

type GroupSubscriptionAssociationArrayOutput struct{ *pulumi.OutputState }

func (GroupSubscriptionAssociationArrayOutput) ElementType

func (GroupSubscriptionAssociationArrayOutput) Index

func (GroupSubscriptionAssociationArrayOutput) ToGroupSubscriptionAssociationArrayOutput

func (o GroupSubscriptionAssociationArrayOutput) ToGroupSubscriptionAssociationArrayOutput() GroupSubscriptionAssociationArrayOutput

func (GroupSubscriptionAssociationArrayOutput) ToGroupSubscriptionAssociationArrayOutputWithContext

func (o GroupSubscriptionAssociationArrayOutput) ToGroupSubscriptionAssociationArrayOutputWithContext(ctx context.Context) GroupSubscriptionAssociationArrayOutput

type GroupSubscriptionAssociationInput

type GroupSubscriptionAssociationInput interface {
	pulumi.Input

	ToGroupSubscriptionAssociationOutput() GroupSubscriptionAssociationOutput
	ToGroupSubscriptionAssociationOutputWithContext(ctx context.Context) GroupSubscriptionAssociationOutput
}

type GroupSubscriptionAssociationMap

type GroupSubscriptionAssociationMap map[string]GroupSubscriptionAssociationInput

func (GroupSubscriptionAssociationMap) ElementType

func (GroupSubscriptionAssociationMap) ToGroupSubscriptionAssociationMapOutput

func (i GroupSubscriptionAssociationMap) ToGroupSubscriptionAssociationMapOutput() GroupSubscriptionAssociationMapOutput

func (GroupSubscriptionAssociationMap) ToGroupSubscriptionAssociationMapOutputWithContext

func (i GroupSubscriptionAssociationMap) ToGroupSubscriptionAssociationMapOutputWithContext(ctx context.Context) GroupSubscriptionAssociationMapOutput

type GroupSubscriptionAssociationMapInput

type GroupSubscriptionAssociationMapInput interface {
	pulumi.Input

	ToGroupSubscriptionAssociationMapOutput() GroupSubscriptionAssociationMapOutput
	ToGroupSubscriptionAssociationMapOutputWithContext(context.Context) GroupSubscriptionAssociationMapOutput
}

GroupSubscriptionAssociationMapInput is an input type that accepts GroupSubscriptionAssociationMap and GroupSubscriptionAssociationMapOutput values. You can construct a concrete instance of `GroupSubscriptionAssociationMapInput` via:

GroupSubscriptionAssociationMap{ "key": GroupSubscriptionAssociationArgs{...} }

type GroupSubscriptionAssociationMapOutput

type GroupSubscriptionAssociationMapOutput struct{ *pulumi.OutputState }

func (GroupSubscriptionAssociationMapOutput) ElementType

func (GroupSubscriptionAssociationMapOutput) MapIndex

func (GroupSubscriptionAssociationMapOutput) ToGroupSubscriptionAssociationMapOutput

func (o GroupSubscriptionAssociationMapOutput) ToGroupSubscriptionAssociationMapOutput() GroupSubscriptionAssociationMapOutput

func (GroupSubscriptionAssociationMapOutput) ToGroupSubscriptionAssociationMapOutputWithContext

func (o GroupSubscriptionAssociationMapOutput) ToGroupSubscriptionAssociationMapOutputWithContext(ctx context.Context) GroupSubscriptionAssociationMapOutput

type GroupSubscriptionAssociationOutput

type GroupSubscriptionAssociationOutput struct {
	*pulumi.OutputState
}

func (GroupSubscriptionAssociationOutput) ElementType

func (GroupSubscriptionAssociationOutput) ToGroupSubscriptionAssociationOutput

func (o GroupSubscriptionAssociationOutput) ToGroupSubscriptionAssociationOutput() GroupSubscriptionAssociationOutput

func (GroupSubscriptionAssociationOutput) ToGroupSubscriptionAssociationOutputWithContext

func (o GroupSubscriptionAssociationOutput) ToGroupSubscriptionAssociationOutputWithContext(ctx context.Context) GroupSubscriptionAssociationOutput

func (GroupSubscriptionAssociationOutput) ToGroupSubscriptionAssociationPtrOutput

func (o GroupSubscriptionAssociationOutput) ToGroupSubscriptionAssociationPtrOutput() GroupSubscriptionAssociationPtrOutput

func (GroupSubscriptionAssociationOutput) ToGroupSubscriptionAssociationPtrOutputWithContext

func (o GroupSubscriptionAssociationOutput) ToGroupSubscriptionAssociationPtrOutputWithContext(ctx context.Context) GroupSubscriptionAssociationPtrOutput

type GroupSubscriptionAssociationPtrInput

type GroupSubscriptionAssociationPtrInput interface {
	pulumi.Input

	ToGroupSubscriptionAssociationPtrOutput() GroupSubscriptionAssociationPtrOutput
	ToGroupSubscriptionAssociationPtrOutputWithContext(ctx context.Context) GroupSubscriptionAssociationPtrOutput
}

type GroupSubscriptionAssociationPtrOutput

type GroupSubscriptionAssociationPtrOutput struct {
	*pulumi.OutputState
}

func (GroupSubscriptionAssociationPtrOutput) ElementType

func (GroupSubscriptionAssociationPtrOutput) ToGroupSubscriptionAssociationPtrOutput

func (o GroupSubscriptionAssociationPtrOutput) ToGroupSubscriptionAssociationPtrOutput() GroupSubscriptionAssociationPtrOutput

func (GroupSubscriptionAssociationPtrOutput) ToGroupSubscriptionAssociationPtrOutputWithContext

func (o GroupSubscriptionAssociationPtrOutput) ToGroupSubscriptionAssociationPtrOutputWithContext(ctx context.Context) GroupSubscriptionAssociationPtrOutput

type GroupSubscriptionAssociationState

type GroupSubscriptionAssociationState struct {
	// The ID of the Management Group to associate the Subscription with. Changing this forces a new Management to be created.
	ManagementGroupId pulumi.StringPtrInput
	// The ID of the Subscription to be associated with the Management Group. Changing this forces a new Management to be created.
	SubscriptionId pulumi.StringPtrInput
}

func (GroupSubscriptionAssociationState) ElementType

type GroupTemplateDeployment

type GroupTemplateDeployment struct {
	pulumi.CustomResourceState

	// The Debug Level which should be used for this Resource Group Template Deployment. Possible values are `none`, `requestContent`, `responseContent` and `requestContent, responseContent`.
	DebugLevel pulumi.StringPtrOutput `pulumi:"debugLevel"`
	// The Azure Region where the Template should exist. Changing this forces a new Template to be created.
	Location          pulumi.StringOutput `pulumi:"location"`
	ManagementGroupId pulumi.StringOutput `pulumi:"managementGroupId"`
	// The name which should be used for this Template Deployment. Changing this forces a new Template Deployment to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The JSON Content of the Outputs of the ARM Template Deployment.
	OutputContent pulumi.StringOutput `pulumi:"outputContent"`
	// The contents of the ARM Template parameters file - containing a JSON list of parameters.
	ParametersContent pulumi.StringOutput `pulumi:"parametersContent"`
	// A mapping of tags which should be assigned to the Template.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// The contents of the ARM Template which should be deployed into this Resource Group. Cannot be specified with `templateSpecVersionId`.
	TemplateContent pulumi.StringOutput `pulumi:"templateContent"`
	// The ID of the Template Spec Version to deploy. Cannot be specified with `templateContent`.
	TemplateSpecVersionId pulumi.StringPtrOutput `pulumi:"templateSpecVersionId"`
}

Manages a Template Deployment at a Management Group Scope.

> **Note:** Deleting a Deployment at the Management Group Scope will not delete any resources created by the deployment.

> **Note:** Deployments to a Management Group are always Incrementally applied. Existing resources that are not part of the template will not be removed.

## Import

Management Group Template Deployments can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:management/groupTemplateDeployment:GroupTemplateDeployment example /providers/Microsoft.Management/managementGroups/my-management-group-id/providers/Microsoft.Resources/deployments/deploy1

```

func GetGroupTemplateDeployment

func GetGroupTemplateDeployment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GroupTemplateDeploymentState, opts ...pulumi.ResourceOption) (*GroupTemplateDeployment, error)

GetGroupTemplateDeployment gets an existing GroupTemplateDeployment 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 NewGroupTemplateDeployment

func NewGroupTemplateDeployment(ctx *pulumi.Context,
	name string, args *GroupTemplateDeploymentArgs, opts ...pulumi.ResourceOption) (*GroupTemplateDeployment, error)

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

func (*GroupTemplateDeployment) ElementType

func (*GroupTemplateDeployment) ElementType() reflect.Type

func (*GroupTemplateDeployment) ToGroupTemplateDeploymentOutput

func (i *GroupTemplateDeployment) ToGroupTemplateDeploymentOutput() GroupTemplateDeploymentOutput

func (*GroupTemplateDeployment) ToGroupTemplateDeploymentOutputWithContext

func (i *GroupTemplateDeployment) ToGroupTemplateDeploymentOutputWithContext(ctx context.Context) GroupTemplateDeploymentOutput

func (*GroupTemplateDeployment) ToGroupTemplateDeploymentPtrOutput

func (i *GroupTemplateDeployment) ToGroupTemplateDeploymentPtrOutput() GroupTemplateDeploymentPtrOutput

func (*GroupTemplateDeployment) ToGroupTemplateDeploymentPtrOutputWithContext

func (i *GroupTemplateDeployment) ToGroupTemplateDeploymentPtrOutputWithContext(ctx context.Context) GroupTemplateDeploymentPtrOutput

type GroupTemplateDeploymentArgs

type GroupTemplateDeploymentArgs struct {
	// The Debug Level which should be used for this Resource Group Template Deployment. Possible values are `none`, `requestContent`, `responseContent` and `requestContent, responseContent`.
	DebugLevel pulumi.StringPtrInput
	// The Azure Region where the Template should exist. Changing this forces a new Template to be created.
	Location          pulumi.StringPtrInput
	ManagementGroupId pulumi.StringInput
	// The name which should be used for this Template Deployment. Changing this forces a new Template Deployment to be created.
	Name pulumi.StringPtrInput
	// The contents of the ARM Template parameters file - containing a JSON list of parameters.
	ParametersContent pulumi.StringPtrInput
	// A mapping of tags which should be assigned to the Template.
	Tags pulumi.StringMapInput
	// The contents of the ARM Template which should be deployed into this Resource Group. Cannot be specified with `templateSpecVersionId`.
	TemplateContent pulumi.StringPtrInput
	// The ID of the Template Spec Version to deploy. Cannot be specified with `templateContent`.
	TemplateSpecVersionId pulumi.StringPtrInput
}

The set of arguments for constructing a GroupTemplateDeployment resource.

func (GroupTemplateDeploymentArgs) ElementType

type GroupTemplateDeploymentArray

type GroupTemplateDeploymentArray []GroupTemplateDeploymentInput

func (GroupTemplateDeploymentArray) ElementType

func (GroupTemplateDeploymentArray) ToGroupTemplateDeploymentArrayOutput

func (i GroupTemplateDeploymentArray) ToGroupTemplateDeploymentArrayOutput() GroupTemplateDeploymentArrayOutput

func (GroupTemplateDeploymentArray) ToGroupTemplateDeploymentArrayOutputWithContext

func (i GroupTemplateDeploymentArray) ToGroupTemplateDeploymentArrayOutputWithContext(ctx context.Context) GroupTemplateDeploymentArrayOutput

type GroupTemplateDeploymentArrayInput

type GroupTemplateDeploymentArrayInput interface {
	pulumi.Input

	ToGroupTemplateDeploymentArrayOutput() GroupTemplateDeploymentArrayOutput
	ToGroupTemplateDeploymentArrayOutputWithContext(context.Context) GroupTemplateDeploymentArrayOutput
}

GroupTemplateDeploymentArrayInput is an input type that accepts GroupTemplateDeploymentArray and GroupTemplateDeploymentArrayOutput values. You can construct a concrete instance of `GroupTemplateDeploymentArrayInput` via:

GroupTemplateDeploymentArray{ GroupTemplateDeploymentArgs{...} }

type GroupTemplateDeploymentArrayOutput

type GroupTemplateDeploymentArrayOutput struct{ *pulumi.OutputState }

func (GroupTemplateDeploymentArrayOutput) ElementType

func (GroupTemplateDeploymentArrayOutput) Index

func (GroupTemplateDeploymentArrayOutput) ToGroupTemplateDeploymentArrayOutput

func (o GroupTemplateDeploymentArrayOutput) ToGroupTemplateDeploymentArrayOutput() GroupTemplateDeploymentArrayOutput

func (GroupTemplateDeploymentArrayOutput) ToGroupTemplateDeploymentArrayOutputWithContext

func (o GroupTemplateDeploymentArrayOutput) ToGroupTemplateDeploymentArrayOutputWithContext(ctx context.Context) GroupTemplateDeploymentArrayOutput

type GroupTemplateDeploymentInput

type GroupTemplateDeploymentInput interface {
	pulumi.Input

	ToGroupTemplateDeploymentOutput() GroupTemplateDeploymentOutput
	ToGroupTemplateDeploymentOutputWithContext(ctx context.Context) GroupTemplateDeploymentOutput
}

type GroupTemplateDeploymentMap

type GroupTemplateDeploymentMap map[string]GroupTemplateDeploymentInput

func (GroupTemplateDeploymentMap) ElementType

func (GroupTemplateDeploymentMap) ElementType() reflect.Type

func (GroupTemplateDeploymentMap) ToGroupTemplateDeploymentMapOutput

func (i GroupTemplateDeploymentMap) ToGroupTemplateDeploymentMapOutput() GroupTemplateDeploymentMapOutput

func (GroupTemplateDeploymentMap) ToGroupTemplateDeploymentMapOutputWithContext

func (i GroupTemplateDeploymentMap) ToGroupTemplateDeploymentMapOutputWithContext(ctx context.Context) GroupTemplateDeploymentMapOutput

type GroupTemplateDeploymentMapInput

type GroupTemplateDeploymentMapInput interface {
	pulumi.Input

	ToGroupTemplateDeploymentMapOutput() GroupTemplateDeploymentMapOutput
	ToGroupTemplateDeploymentMapOutputWithContext(context.Context) GroupTemplateDeploymentMapOutput
}

GroupTemplateDeploymentMapInput is an input type that accepts GroupTemplateDeploymentMap and GroupTemplateDeploymentMapOutput values. You can construct a concrete instance of `GroupTemplateDeploymentMapInput` via:

GroupTemplateDeploymentMap{ "key": GroupTemplateDeploymentArgs{...} }

type GroupTemplateDeploymentMapOutput

type GroupTemplateDeploymentMapOutput struct{ *pulumi.OutputState }

func (GroupTemplateDeploymentMapOutput) ElementType

func (GroupTemplateDeploymentMapOutput) MapIndex

func (GroupTemplateDeploymentMapOutput) ToGroupTemplateDeploymentMapOutput

func (o GroupTemplateDeploymentMapOutput) ToGroupTemplateDeploymentMapOutput() GroupTemplateDeploymentMapOutput

func (GroupTemplateDeploymentMapOutput) ToGroupTemplateDeploymentMapOutputWithContext

func (o GroupTemplateDeploymentMapOutput) ToGroupTemplateDeploymentMapOutputWithContext(ctx context.Context) GroupTemplateDeploymentMapOutput

type GroupTemplateDeploymentOutput

type GroupTemplateDeploymentOutput struct {
	*pulumi.OutputState
}

func (GroupTemplateDeploymentOutput) ElementType

func (GroupTemplateDeploymentOutput) ToGroupTemplateDeploymentOutput

func (o GroupTemplateDeploymentOutput) ToGroupTemplateDeploymentOutput() GroupTemplateDeploymentOutput

func (GroupTemplateDeploymentOutput) ToGroupTemplateDeploymentOutputWithContext

func (o GroupTemplateDeploymentOutput) ToGroupTemplateDeploymentOutputWithContext(ctx context.Context) GroupTemplateDeploymentOutput

func (GroupTemplateDeploymentOutput) ToGroupTemplateDeploymentPtrOutput

func (o GroupTemplateDeploymentOutput) ToGroupTemplateDeploymentPtrOutput() GroupTemplateDeploymentPtrOutput

func (GroupTemplateDeploymentOutput) ToGroupTemplateDeploymentPtrOutputWithContext

func (o GroupTemplateDeploymentOutput) ToGroupTemplateDeploymentPtrOutputWithContext(ctx context.Context) GroupTemplateDeploymentPtrOutput

type GroupTemplateDeploymentPtrInput

type GroupTemplateDeploymentPtrInput interface {
	pulumi.Input

	ToGroupTemplateDeploymentPtrOutput() GroupTemplateDeploymentPtrOutput
	ToGroupTemplateDeploymentPtrOutputWithContext(ctx context.Context) GroupTemplateDeploymentPtrOutput
}

type GroupTemplateDeploymentPtrOutput

type GroupTemplateDeploymentPtrOutput struct {
	*pulumi.OutputState
}

func (GroupTemplateDeploymentPtrOutput) ElementType

func (GroupTemplateDeploymentPtrOutput) ToGroupTemplateDeploymentPtrOutput

func (o GroupTemplateDeploymentPtrOutput) ToGroupTemplateDeploymentPtrOutput() GroupTemplateDeploymentPtrOutput

func (GroupTemplateDeploymentPtrOutput) ToGroupTemplateDeploymentPtrOutputWithContext

func (o GroupTemplateDeploymentPtrOutput) ToGroupTemplateDeploymentPtrOutputWithContext(ctx context.Context) GroupTemplateDeploymentPtrOutput

type GroupTemplateDeploymentState

type GroupTemplateDeploymentState struct {
	// The Debug Level which should be used for this Resource Group Template Deployment. Possible values are `none`, `requestContent`, `responseContent` and `requestContent, responseContent`.
	DebugLevel pulumi.StringPtrInput
	// The Azure Region where the Template should exist. Changing this forces a new Template to be created.
	Location          pulumi.StringPtrInput
	ManagementGroupId pulumi.StringPtrInput
	// The name which should be used for this Template Deployment. Changing this forces a new Template Deployment to be created.
	Name pulumi.StringPtrInput
	// The JSON Content of the Outputs of the ARM Template Deployment.
	OutputContent pulumi.StringPtrInput
	// The contents of the ARM Template parameters file - containing a JSON list of parameters.
	ParametersContent pulumi.StringPtrInput
	// A mapping of tags which should be assigned to the Template.
	Tags pulumi.StringMapInput
	// The contents of the ARM Template which should be deployed into this Resource Group. Cannot be specified with `templateSpecVersionId`.
	TemplateContent pulumi.StringPtrInput
	// The ID of the Template Spec Version to deploy. Cannot be specified with `templateContent`.
	TemplateSpecVersionId pulumi.StringPtrInput
}

func (GroupTemplateDeploymentState) ElementType

type Lock

type Lock struct {
	pulumi.CustomResourceState

	// Specifies the Level to be used for this Lock. Possible values are `CanNotDelete` and `ReadOnly`. Changing this forces a new resource to be created.
	LockLevel pulumi.StringOutput `pulumi:"lockLevel"`
	// Specifies the name of the Management Lock. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies some notes about the lock. Maximum of 512 characters. Changing this forces a new resource to be created.
	Notes pulumi.StringPtrOutput `pulumi:"notes"`
	// Specifies the scope at which the Management Lock should be created. Changing this forces a new resource to be created.
	Scope pulumi.StringOutput `pulumi:"scope"`
}

Manages a Management Lock which is scoped to a Subscription, Resource Group or Resource.

## Example Usage ### Subscription Level Lock)

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/management"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.LookupSubscription(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = management.NewLock(ctx, "subscription_level", &management.LockArgs{
			Scope:     pulumi.String(current.Id),
			LockLevel: pulumi.String("CanNotDelete"),
			Notes:     pulumi.String("Items can't be deleted in this subscription!"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Example Usage (Resource Group Level Lock)

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/management"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		_, err = management.NewLock(ctx, "resource_group_level", &management.LockArgs{
			Scope:     example.ID(),
			LockLevel: pulumi.String("ReadOnly"),
			Notes:     pulumi.String("This Resource Group is Read-Only"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Resource Level Lock)

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/management"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/network"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		examplePublicIp, err := network.NewPublicIp(ctx, "examplePublicIp", &network.PublicIpArgs{
			Location:             exampleResourceGroup.Location,
			ResourceGroupName:    exampleResourceGroup.Name,
			AllocationMethod:     pulumi.String("Static"),
			IdleTimeoutInMinutes: pulumi.Int(30),
		})
		if err != nil {
			return err
		}
		_, err = management.NewLock(ctx, "public_ip", &management.LockArgs{
			Scope:     examplePublicIp.ID(),
			LockLevel: pulumi.String("CanNotDelete"),
			Notes:     pulumi.String("Locked because it's needed by a third-party"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Management Locks can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:management/lock:Lock lock1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Authorization/locks/lock1

```

func GetLock

func GetLock(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LockState, opts ...pulumi.ResourceOption) (*Lock, error)

GetLock gets an existing Lock 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 NewLock

func NewLock(ctx *pulumi.Context,
	name string, args *LockArgs, opts ...pulumi.ResourceOption) (*Lock, error)

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

func (*Lock) ElementType

func (*Lock) ElementType() reflect.Type

func (*Lock) ToLockOutput

func (i *Lock) ToLockOutput() LockOutput

func (*Lock) ToLockOutputWithContext

func (i *Lock) ToLockOutputWithContext(ctx context.Context) LockOutput

func (*Lock) ToLockPtrOutput

func (i *Lock) ToLockPtrOutput() LockPtrOutput

func (*Lock) ToLockPtrOutputWithContext

func (i *Lock) ToLockPtrOutputWithContext(ctx context.Context) LockPtrOutput

type LockArgs

type LockArgs struct {
	// Specifies the Level to be used for this Lock. Possible values are `CanNotDelete` and `ReadOnly`. Changing this forces a new resource to be created.
	LockLevel pulumi.StringInput
	// Specifies the name of the Management Lock. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies some notes about the lock. Maximum of 512 characters. Changing this forces a new resource to be created.
	Notes pulumi.StringPtrInput
	// Specifies the scope at which the Management Lock should be created. Changing this forces a new resource to be created.
	Scope pulumi.StringInput
}

The set of arguments for constructing a Lock resource.

func (LockArgs) ElementType

func (LockArgs) ElementType() reflect.Type

type LockArray

type LockArray []LockInput

func (LockArray) ElementType

func (LockArray) ElementType() reflect.Type

func (LockArray) ToLockArrayOutput

func (i LockArray) ToLockArrayOutput() LockArrayOutput

func (LockArray) ToLockArrayOutputWithContext

func (i LockArray) ToLockArrayOutputWithContext(ctx context.Context) LockArrayOutput

type LockArrayInput

type LockArrayInput interface {
	pulumi.Input

	ToLockArrayOutput() LockArrayOutput
	ToLockArrayOutputWithContext(context.Context) LockArrayOutput
}

LockArrayInput is an input type that accepts LockArray and LockArrayOutput values. You can construct a concrete instance of `LockArrayInput` via:

LockArray{ LockArgs{...} }

type LockArrayOutput

type LockArrayOutput struct{ *pulumi.OutputState }

func (LockArrayOutput) ElementType

func (LockArrayOutput) ElementType() reflect.Type

func (LockArrayOutput) Index

func (LockArrayOutput) ToLockArrayOutput

func (o LockArrayOutput) ToLockArrayOutput() LockArrayOutput

func (LockArrayOutput) ToLockArrayOutputWithContext

func (o LockArrayOutput) ToLockArrayOutputWithContext(ctx context.Context) LockArrayOutput

type LockInput

type LockInput interface {
	pulumi.Input

	ToLockOutput() LockOutput
	ToLockOutputWithContext(ctx context.Context) LockOutput
}

type LockMap

type LockMap map[string]LockInput

func (LockMap) ElementType

func (LockMap) ElementType() reflect.Type

func (LockMap) ToLockMapOutput

func (i LockMap) ToLockMapOutput() LockMapOutput

func (LockMap) ToLockMapOutputWithContext

func (i LockMap) ToLockMapOutputWithContext(ctx context.Context) LockMapOutput

type LockMapInput

type LockMapInput interface {
	pulumi.Input

	ToLockMapOutput() LockMapOutput
	ToLockMapOutputWithContext(context.Context) LockMapOutput
}

LockMapInput is an input type that accepts LockMap and LockMapOutput values. You can construct a concrete instance of `LockMapInput` via:

LockMap{ "key": LockArgs{...} }

type LockMapOutput

type LockMapOutput struct{ *pulumi.OutputState }

func (LockMapOutput) ElementType

func (LockMapOutput) ElementType() reflect.Type

func (LockMapOutput) MapIndex

func (LockMapOutput) ToLockMapOutput

func (o LockMapOutput) ToLockMapOutput() LockMapOutput

func (LockMapOutput) ToLockMapOutputWithContext

func (o LockMapOutput) ToLockMapOutputWithContext(ctx context.Context) LockMapOutput

type LockOutput

type LockOutput struct {
	*pulumi.OutputState
}

func (LockOutput) ElementType

func (LockOutput) ElementType() reflect.Type

func (LockOutput) ToLockOutput

func (o LockOutput) ToLockOutput() LockOutput

func (LockOutput) ToLockOutputWithContext

func (o LockOutput) ToLockOutputWithContext(ctx context.Context) LockOutput

func (LockOutput) ToLockPtrOutput

func (o LockOutput) ToLockPtrOutput() LockPtrOutput

func (LockOutput) ToLockPtrOutputWithContext

func (o LockOutput) ToLockPtrOutputWithContext(ctx context.Context) LockPtrOutput

type LockPtrInput

type LockPtrInput interface {
	pulumi.Input

	ToLockPtrOutput() LockPtrOutput
	ToLockPtrOutputWithContext(ctx context.Context) LockPtrOutput
}

type LockPtrOutput

type LockPtrOutput struct {
	*pulumi.OutputState
}

func (LockPtrOutput) ElementType

func (LockPtrOutput) ElementType() reflect.Type

func (LockPtrOutput) ToLockPtrOutput

func (o LockPtrOutput) ToLockPtrOutput() LockPtrOutput

func (LockPtrOutput) ToLockPtrOutputWithContext

func (o LockPtrOutput) ToLockPtrOutputWithContext(ctx context.Context) LockPtrOutput

type LockState

type LockState struct {
	// Specifies the Level to be used for this Lock. Possible values are `CanNotDelete` and `ReadOnly`. Changing this forces a new resource to be created.
	LockLevel pulumi.StringPtrInput
	// Specifies the name of the Management Lock. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies some notes about the lock. Maximum of 512 characters. Changing this forces a new resource to be created.
	Notes pulumi.StringPtrInput
	// Specifies the scope at which the Management Lock should be created. Changing this forces a new resource to be created.
	Scope pulumi.StringPtrInput
}

func (LockState) ElementType

func (LockState) ElementType() reflect.Type

type LookupGroupArgs

type LookupGroupArgs struct {
	// Specifies the display name of this Management Group.
	DisplayName *string `pulumi:"displayName"`
	// Specifies the name or UUID of this Management Group.
	//
	// Deprecated: Deprecated in favour of `name`
	GroupId *string `pulumi:"groupId"`
	// Specifies the name or UUID of this Management Group.
	Name *string `pulumi:"name"`
}

A collection of arguments for invoking getGroup.

type LookupGroupResult

type LookupGroupResult struct {
	DisplayName string `pulumi:"displayName"`
	// Deprecated: Deprecated in favour of `name`
	GroupId string `pulumi:"groupId"`
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// The ID of any Parent Management Group.
	ParentManagementGroupId string `pulumi:"parentManagementGroupId"`
	// A list of Subscription IDs which are assigned to the Management Group.
	SubscriptionIds []string `pulumi:"subscriptionIds"`
}

A collection of values returned by getGroup.

func LookupGroup

func LookupGroup(ctx *pulumi.Context, args *LookupGroupArgs, opts ...pulumi.InvokeOption) (*LookupGroupResult, error)

Use this data source to access information about an existing Management Group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/management"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "00000000-0000-0000-0000-000000000000"
		example, err := management.LookupGroup(ctx, &management.LookupGroupArgs{
			Name: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("displayName", example.DisplayName)
		return nil
	})
}

```

Jump to

Keyboard shortcuts

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