management

package
v5.4.0 Latest Latest
Warning

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

Go to latest
Published: May 3, 2022 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 Group

type Group struct {
	pulumi.CustomResourceState

	// A friendly name for this Management Group. If not specified, this will 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.
	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/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/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

type GroupArgs

type GroupArgs struct {
	// A friendly name for this Management Group. If not specified, this will 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.
	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

type GroupPolicyAssignment

type GroupPolicyAssignment struct {
	pulumi.CustomResourceState

	// A description which should be used for this Policy Assignment.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The Display Name for this Policy Assignment.
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Specifies if this Policy should be enforced or not?
	Enforce pulumi.BoolPtrOutput `pulumi:"enforce"`
	// An `identity` block as defined below.
	Identity GroupPolicyAssignmentIdentityPtrOutput `pulumi:"identity"`
	// The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The ID of the Management Group. Changing this forces a new Policy Assignment to be created.
	ManagementGroupId pulumi.StringOutput `pulumi:"managementGroupId"`
	// A JSON mapping of any Metadata for this Policy.
	Metadata pulumi.StringOutput `pulumi:"metadata"`
	// The name which should be used for this Policy Assignment. Changing this forces a new Policy Assignment to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// One or more `nonComplianceMessage` blocks as defined below.
	NonComplianceMessages GroupPolicyAssignmentNonComplianceMessageArrayOutput `pulumi:"nonComplianceMessages"`
	// Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
	NotScopes pulumi.StringArrayOutput `pulumi:"notScopes"`
	// A JSON mapping of any Parameters for this Policy.
	Parameters pulumi.StringPtrOutput `pulumi:"parameters"`
	// The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
	PolicyDefinitionId pulumi.StringOutput `pulumi:"policyDefinitionId"`
}

Manages a Policy Assignment to a Management Group.

## Import

Management Group Policy Assignments can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:management/groupPolicyAssignment:GroupPolicyAssignment example /providers/Microsoft.Management/managementGroups/group1/providers/Microsoft.Authorization/policyAssignments/assignment1

```

func GetGroupPolicyAssignment

func GetGroupPolicyAssignment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GroupPolicyAssignmentState, opts ...pulumi.ResourceOption) (*GroupPolicyAssignment, error)

GetGroupPolicyAssignment gets an existing GroupPolicyAssignment 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 NewGroupPolicyAssignment

func NewGroupPolicyAssignment(ctx *pulumi.Context,
	name string, args *GroupPolicyAssignmentArgs, opts ...pulumi.ResourceOption) (*GroupPolicyAssignment, error)

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

func (*GroupPolicyAssignment) ElementType

func (*GroupPolicyAssignment) ElementType() reflect.Type

func (*GroupPolicyAssignment) ToGroupPolicyAssignmentOutput

func (i *GroupPolicyAssignment) ToGroupPolicyAssignmentOutput() GroupPolicyAssignmentOutput

func (*GroupPolicyAssignment) ToGroupPolicyAssignmentOutputWithContext

func (i *GroupPolicyAssignment) ToGroupPolicyAssignmentOutputWithContext(ctx context.Context) GroupPolicyAssignmentOutput

type GroupPolicyAssignmentArgs

type GroupPolicyAssignmentArgs struct {
	// A description which should be used for this Policy Assignment.
	Description pulumi.StringPtrInput
	// The Display Name for this Policy Assignment.
	DisplayName pulumi.StringPtrInput
	// Specifies if this Policy should be enforced or not?
	Enforce pulumi.BoolPtrInput
	// An `identity` block as defined below.
	Identity GroupPolicyAssignmentIdentityPtrInput
	// The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
	Location pulumi.StringPtrInput
	// The ID of the Management Group. Changing this forces a new Policy Assignment to be created.
	ManagementGroupId pulumi.StringInput
	// A JSON mapping of any Metadata for this Policy.
	Metadata pulumi.StringPtrInput
	// The name which should be used for this Policy Assignment. Changing this forces a new Policy Assignment to be created.
	Name pulumi.StringPtrInput
	// One or more `nonComplianceMessage` blocks as defined below.
	NonComplianceMessages GroupPolicyAssignmentNonComplianceMessageArrayInput
	// Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
	NotScopes pulumi.StringArrayInput
	// A JSON mapping of any Parameters for this Policy.
	Parameters pulumi.StringPtrInput
	// The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
	PolicyDefinitionId pulumi.StringInput
}

The set of arguments for constructing a GroupPolicyAssignment resource.

func (GroupPolicyAssignmentArgs) ElementType

func (GroupPolicyAssignmentArgs) ElementType() reflect.Type

type GroupPolicyAssignmentArray

type GroupPolicyAssignmentArray []GroupPolicyAssignmentInput

func (GroupPolicyAssignmentArray) ElementType

func (GroupPolicyAssignmentArray) ElementType() reflect.Type

func (GroupPolicyAssignmentArray) ToGroupPolicyAssignmentArrayOutput

func (i GroupPolicyAssignmentArray) ToGroupPolicyAssignmentArrayOutput() GroupPolicyAssignmentArrayOutput

func (GroupPolicyAssignmentArray) ToGroupPolicyAssignmentArrayOutputWithContext

func (i GroupPolicyAssignmentArray) ToGroupPolicyAssignmentArrayOutputWithContext(ctx context.Context) GroupPolicyAssignmentArrayOutput

type GroupPolicyAssignmentArrayInput

type GroupPolicyAssignmentArrayInput interface {
	pulumi.Input

	ToGroupPolicyAssignmentArrayOutput() GroupPolicyAssignmentArrayOutput
	ToGroupPolicyAssignmentArrayOutputWithContext(context.Context) GroupPolicyAssignmentArrayOutput
}

GroupPolicyAssignmentArrayInput is an input type that accepts GroupPolicyAssignmentArray and GroupPolicyAssignmentArrayOutput values. You can construct a concrete instance of `GroupPolicyAssignmentArrayInput` via:

GroupPolicyAssignmentArray{ GroupPolicyAssignmentArgs{...} }

type GroupPolicyAssignmentArrayOutput

type GroupPolicyAssignmentArrayOutput struct{ *pulumi.OutputState }

func (GroupPolicyAssignmentArrayOutput) ElementType

func (GroupPolicyAssignmentArrayOutput) Index

func (GroupPolicyAssignmentArrayOutput) ToGroupPolicyAssignmentArrayOutput

func (o GroupPolicyAssignmentArrayOutput) ToGroupPolicyAssignmentArrayOutput() GroupPolicyAssignmentArrayOutput

func (GroupPolicyAssignmentArrayOutput) ToGroupPolicyAssignmentArrayOutputWithContext

func (o GroupPolicyAssignmentArrayOutput) ToGroupPolicyAssignmentArrayOutputWithContext(ctx context.Context) GroupPolicyAssignmentArrayOutput

type GroupPolicyAssignmentIdentity

type GroupPolicyAssignmentIdentity struct {
	// A list of User Managed Identity ID's which should be assigned to the Policy Definition.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID of the Policy Assignment for this Management Group.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID of the Policy Assignment for this Management Group.
	TenantId *string `pulumi:"tenantId"`
	// The Type of Managed Identity which should be added to this Policy Definition. Possible values are `SystemAssigned` and `UserAssigned`.
	Type string `pulumi:"type"`
}

type GroupPolicyAssignmentIdentityArgs

type GroupPolicyAssignmentIdentityArgs struct {
	// A list of User Managed Identity ID's which should be assigned to the Policy Definition.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID of the Policy Assignment for this Management Group.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID of the Policy Assignment for this Management Group.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// The Type of Managed Identity which should be added to this Policy Definition. Possible values are `SystemAssigned` and `UserAssigned`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GroupPolicyAssignmentIdentityArgs) ElementType

func (GroupPolicyAssignmentIdentityArgs) ToGroupPolicyAssignmentIdentityOutput

func (i GroupPolicyAssignmentIdentityArgs) ToGroupPolicyAssignmentIdentityOutput() GroupPolicyAssignmentIdentityOutput

func (GroupPolicyAssignmentIdentityArgs) ToGroupPolicyAssignmentIdentityOutputWithContext

func (i GroupPolicyAssignmentIdentityArgs) ToGroupPolicyAssignmentIdentityOutputWithContext(ctx context.Context) GroupPolicyAssignmentIdentityOutput

func (GroupPolicyAssignmentIdentityArgs) ToGroupPolicyAssignmentIdentityPtrOutput

func (i GroupPolicyAssignmentIdentityArgs) ToGroupPolicyAssignmentIdentityPtrOutput() GroupPolicyAssignmentIdentityPtrOutput

func (GroupPolicyAssignmentIdentityArgs) ToGroupPolicyAssignmentIdentityPtrOutputWithContext

func (i GroupPolicyAssignmentIdentityArgs) ToGroupPolicyAssignmentIdentityPtrOutputWithContext(ctx context.Context) GroupPolicyAssignmentIdentityPtrOutput

type GroupPolicyAssignmentIdentityInput

type GroupPolicyAssignmentIdentityInput interface {
	pulumi.Input

	ToGroupPolicyAssignmentIdentityOutput() GroupPolicyAssignmentIdentityOutput
	ToGroupPolicyAssignmentIdentityOutputWithContext(context.Context) GroupPolicyAssignmentIdentityOutput
}

GroupPolicyAssignmentIdentityInput is an input type that accepts GroupPolicyAssignmentIdentityArgs and GroupPolicyAssignmentIdentityOutput values. You can construct a concrete instance of `GroupPolicyAssignmentIdentityInput` via:

GroupPolicyAssignmentIdentityArgs{...}

type GroupPolicyAssignmentIdentityOutput

type GroupPolicyAssignmentIdentityOutput struct{ *pulumi.OutputState }

func (GroupPolicyAssignmentIdentityOutput) ElementType

func (GroupPolicyAssignmentIdentityOutput) IdentityIds

A list of User Managed Identity ID's which should be assigned to the Policy Definition.

func (GroupPolicyAssignmentIdentityOutput) PrincipalId

The Principal ID of the Policy Assignment for this Management Group.

func (GroupPolicyAssignmentIdentityOutput) TenantId

The Tenant ID of the Policy Assignment for this Management Group.

func (GroupPolicyAssignmentIdentityOutput) ToGroupPolicyAssignmentIdentityOutput

func (o GroupPolicyAssignmentIdentityOutput) ToGroupPolicyAssignmentIdentityOutput() GroupPolicyAssignmentIdentityOutput

func (GroupPolicyAssignmentIdentityOutput) ToGroupPolicyAssignmentIdentityOutputWithContext

func (o GroupPolicyAssignmentIdentityOutput) ToGroupPolicyAssignmentIdentityOutputWithContext(ctx context.Context) GroupPolicyAssignmentIdentityOutput

func (GroupPolicyAssignmentIdentityOutput) ToGroupPolicyAssignmentIdentityPtrOutput

func (o GroupPolicyAssignmentIdentityOutput) ToGroupPolicyAssignmentIdentityPtrOutput() GroupPolicyAssignmentIdentityPtrOutput

func (GroupPolicyAssignmentIdentityOutput) ToGroupPolicyAssignmentIdentityPtrOutputWithContext

func (o GroupPolicyAssignmentIdentityOutput) ToGroupPolicyAssignmentIdentityPtrOutputWithContext(ctx context.Context) GroupPolicyAssignmentIdentityPtrOutput

func (GroupPolicyAssignmentIdentityOutput) Type

The Type of Managed Identity which should be added to this Policy Definition. Possible values are `SystemAssigned` and `UserAssigned`.

type GroupPolicyAssignmentIdentityPtrInput

type GroupPolicyAssignmentIdentityPtrInput interface {
	pulumi.Input

	ToGroupPolicyAssignmentIdentityPtrOutput() GroupPolicyAssignmentIdentityPtrOutput
	ToGroupPolicyAssignmentIdentityPtrOutputWithContext(context.Context) GroupPolicyAssignmentIdentityPtrOutput
}

GroupPolicyAssignmentIdentityPtrInput is an input type that accepts GroupPolicyAssignmentIdentityArgs, GroupPolicyAssignmentIdentityPtr and GroupPolicyAssignmentIdentityPtrOutput values. You can construct a concrete instance of `GroupPolicyAssignmentIdentityPtrInput` via:

        GroupPolicyAssignmentIdentityArgs{...}

or:

        nil

type GroupPolicyAssignmentIdentityPtrOutput

type GroupPolicyAssignmentIdentityPtrOutput struct{ *pulumi.OutputState }

func (GroupPolicyAssignmentIdentityPtrOutput) Elem

func (GroupPolicyAssignmentIdentityPtrOutput) ElementType

func (GroupPolicyAssignmentIdentityPtrOutput) IdentityIds

A list of User Managed Identity ID's which should be assigned to the Policy Definition.

func (GroupPolicyAssignmentIdentityPtrOutput) PrincipalId

The Principal ID of the Policy Assignment for this Management Group.

func (GroupPolicyAssignmentIdentityPtrOutput) TenantId

The Tenant ID of the Policy Assignment for this Management Group.

func (GroupPolicyAssignmentIdentityPtrOutput) ToGroupPolicyAssignmentIdentityPtrOutput

func (o GroupPolicyAssignmentIdentityPtrOutput) ToGroupPolicyAssignmentIdentityPtrOutput() GroupPolicyAssignmentIdentityPtrOutput

func (GroupPolicyAssignmentIdentityPtrOutput) ToGroupPolicyAssignmentIdentityPtrOutputWithContext

func (o GroupPolicyAssignmentIdentityPtrOutput) ToGroupPolicyAssignmentIdentityPtrOutputWithContext(ctx context.Context) GroupPolicyAssignmentIdentityPtrOutput

func (GroupPolicyAssignmentIdentityPtrOutput) Type

The Type of Managed Identity which should be added to this Policy Definition. Possible values are `SystemAssigned` and `UserAssigned`.

type GroupPolicyAssignmentInput

type GroupPolicyAssignmentInput interface {
	pulumi.Input

	ToGroupPolicyAssignmentOutput() GroupPolicyAssignmentOutput
	ToGroupPolicyAssignmentOutputWithContext(ctx context.Context) GroupPolicyAssignmentOutput
}

type GroupPolicyAssignmentMap

type GroupPolicyAssignmentMap map[string]GroupPolicyAssignmentInput

func (GroupPolicyAssignmentMap) ElementType

func (GroupPolicyAssignmentMap) ElementType() reflect.Type

func (GroupPolicyAssignmentMap) ToGroupPolicyAssignmentMapOutput

func (i GroupPolicyAssignmentMap) ToGroupPolicyAssignmentMapOutput() GroupPolicyAssignmentMapOutput

func (GroupPolicyAssignmentMap) ToGroupPolicyAssignmentMapOutputWithContext

func (i GroupPolicyAssignmentMap) ToGroupPolicyAssignmentMapOutputWithContext(ctx context.Context) GroupPolicyAssignmentMapOutput

type GroupPolicyAssignmentMapInput

type GroupPolicyAssignmentMapInput interface {
	pulumi.Input

	ToGroupPolicyAssignmentMapOutput() GroupPolicyAssignmentMapOutput
	ToGroupPolicyAssignmentMapOutputWithContext(context.Context) GroupPolicyAssignmentMapOutput
}

GroupPolicyAssignmentMapInput is an input type that accepts GroupPolicyAssignmentMap and GroupPolicyAssignmentMapOutput values. You can construct a concrete instance of `GroupPolicyAssignmentMapInput` via:

GroupPolicyAssignmentMap{ "key": GroupPolicyAssignmentArgs{...} }

type GroupPolicyAssignmentMapOutput

type GroupPolicyAssignmentMapOutput struct{ *pulumi.OutputState }

func (GroupPolicyAssignmentMapOutput) ElementType

func (GroupPolicyAssignmentMapOutput) MapIndex

func (GroupPolicyAssignmentMapOutput) ToGroupPolicyAssignmentMapOutput

func (o GroupPolicyAssignmentMapOutput) ToGroupPolicyAssignmentMapOutput() GroupPolicyAssignmentMapOutput

func (GroupPolicyAssignmentMapOutput) ToGroupPolicyAssignmentMapOutputWithContext

func (o GroupPolicyAssignmentMapOutput) ToGroupPolicyAssignmentMapOutputWithContext(ctx context.Context) GroupPolicyAssignmentMapOutput

type GroupPolicyAssignmentNonComplianceMessage

type GroupPolicyAssignmentNonComplianceMessage struct {
	// The non-compliance message text. When assigning policy sets (initiatives), unless `policyDefinitionReferenceId` is specified then this message will be the default for all policies.
	Content string `pulumi:"content"`
	// When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to.
	PolicyDefinitionReferenceId *string `pulumi:"policyDefinitionReferenceId"`
}

type GroupPolicyAssignmentNonComplianceMessageArgs

type GroupPolicyAssignmentNonComplianceMessageArgs struct {
	// The non-compliance message text. When assigning policy sets (initiatives), unless `policyDefinitionReferenceId` is specified then this message will be the default for all policies.
	Content pulumi.StringInput `pulumi:"content"`
	// When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to.
	PolicyDefinitionReferenceId pulumi.StringPtrInput `pulumi:"policyDefinitionReferenceId"`
}

func (GroupPolicyAssignmentNonComplianceMessageArgs) ElementType

func (GroupPolicyAssignmentNonComplianceMessageArgs) ToGroupPolicyAssignmentNonComplianceMessageOutput

func (i GroupPolicyAssignmentNonComplianceMessageArgs) ToGroupPolicyAssignmentNonComplianceMessageOutput() GroupPolicyAssignmentNonComplianceMessageOutput

func (GroupPolicyAssignmentNonComplianceMessageArgs) ToGroupPolicyAssignmentNonComplianceMessageOutputWithContext

func (i GroupPolicyAssignmentNonComplianceMessageArgs) ToGroupPolicyAssignmentNonComplianceMessageOutputWithContext(ctx context.Context) GroupPolicyAssignmentNonComplianceMessageOutput

type GroupPolicyAssignmentNonComplianceMessageArray

type GroupPolicyAssignmentNonComplianceMessageArray []GroupPolicyAssignmentNonComplianceMessageInput

func (GroupPolicyAssignmentNonComplianceMessageArray) ElementType

func (GroupPolicyAssignmentNonComplianceMessageArray) ToGroupPolicyAssignmentNonComplianceMessageArrayOutput

func (i GroupPolicyAssignmentNonComplianceMessageArray) ToGroupPolicyAssignmentNonComplianceMessageArrayOutput() GroupPolicyAssignmentNonComplianceMessageArrayOutput

func (GroupPolicyAssignmentNonComplianceMessageArray) ToGroupPolicyAssignmentNonComplianceMessageArrayOutputWithContext

func (i GroupPolicyAssignmentNonComplianceMessageArray) ToGroupPolicyAssignmentNonComplianceMessageArrayOutputWithContext(ctx context.Context) GroupPolicyAssignmentNonComplianceMessageArrayOutput

type GroupPolicyAssignmentNonComplianceMessageArrayInput

type GroupPolicyAssignmentNonComplianceMessageArrayInput interface {
	pulumi.Input

	ToGroupPolicyAssignmentNonComplianceMessageArrayOutput() GroupPolicyAssignmentNonComplianceMessageArrayOutput
	ToGroupPolicyAssignmentNonComplianceMessageArrayOutputWithContext(context.Context) GroupPolicyAssignmentNonComplianceMessageArrayOutput
}

GroupPolicyAssignmentNonComplianceMessageArrayInput is an input type that accepts GroupPolicyAssignmentNonComplianceMessageArray and GroupPolicyAssignmentNonComplianceMessageArrayOutput values. You can construct a concrete instance of `GroupPolicyAssignmentNonComplianceMessageArrayInput` via:

GroupPolicyAssignmentNonComplianceMessageArray{ GroupPolicyAssignmentNonComplianceMessageArgs{...} }

type GroupPolicyAssignmentNonComplianceMessageArrayOutput

type GroupPolicyAssignmentNonComplianceMessageArrayOutput struct{ *pulumi.OutputState }

func (GroupPolicyAssignmentNonComplianceMessageArrayOutput) ElementType

func (GroupPolicyAssignmentNonComplianceMessageArrayOutput) Index

func (GroupPolicyAssignmentNonComplianceMessageArrayOutput) ToGroupPolicyAssignmentNonComplianceMessageArrayOutput

func (GroupPolicyAssignmentNonComplianceMessageArrayOutput) ToGroupPolicyAssignmentNonComplianceMessageArrayOutputWithContext

func (o GroupPolicyAssignmentNonComplianceMessageArrayOutput) ToGroupPolicyAssignmentNonComplianceMessageArrayOutputWithContext(ctx context.Context) GroupPolicyAssignmentNonComplianceMessageArrayOutput

type GroupPolicyAssignmentNonComplianceMessageInput

type GroupPolicyAssignmentNonComplianceMessageInput interface {
	pulumi.Input

	ToGroupPolicyAssignmentNonComplianceMessageOutput() GroupPolicyAssignmentNonComplianceMessageOutput
	ToGroupPolicyAssignmentNonComplianceMessageOutputWithContext(context.Context) GroupPolicyAssignmentNonComplianceMessageOutput
}

GroupPolicyAssignmentNonComplianceMessageInput is an input type that accepts GroupPolicyAssignmentNonComplianceMessageArgs and GroupPolicyAssignmentNonComplianceMessageOutput values. You can construct a concrete instance of `GroupPolicyAssignmentNonComplianceMessageInput` via:

GroupPolicyAssignmentNonComplianceMessageArgs{...}

type GroupPolicyAssignmentNonComplianceMessageOutput

type GroupPolicyAssignmentNonComplianceMessageOutput struct{ *pulumi.OutputState }

func (GroupPolicyAssignmentNonComplianceMessageOutput) Content

The non-compliance message text. When assigning policy sets (initiatives), unless `policyDefinitionReferenceId` is specified then this message will be the default for all policies.

func (GroupPolicyAssignmentNonComplianceMessageOutput) ElementType

func (GroupPolicyAssignmentNonComplianceMessageOutput) PolicyDefinitionReferenceId

When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to.

func (GroupPolicyAssignmentNonComplianceMessageOutput) ToGroupPolicyAssignmentNonComplianceMessageOutput

func (o GroupPolicyAssignmentNonComplianceMessageOutput) ToGroupPolicyAssignmentNonComplianceMessageOutput() GroupPolicyAssignmentNonComplianceMessageOutput

func (GroupPolicyAssignmentNonComplianceMessageOutput) ToGroupPolicyAssignmentNonComplianceMessageOutputWithContext

func (o GroupPolicyAssignmentNonComplianceMessageOutput) ToGroupPolicyAssignmentNonComplianceMessageOutputWithContext(ctx context.Context) GroupPolicyAssignmentNonComplianceMessageOutput

type GroupPolicyAssignmentOutput

type GroupPolicyAssignmentOutput struct{ *pulumi.OutputState }

func (GroupPolicyAssignmentOutput) ElementType

func (GroupPolicyAssignmentOutput) ToGroupPolicyAssignmentOutput

func (o GroupPolicyAssignmentOutput) ToGroupPolicyAssignmentOutput() GroupPolicyAssignmentOutput

func (GroupPolicyAssignmentOutput) ToGroupPolicyAssignmentOutputWithContext

func (o GroupPolicyAssignmentOutput) ToGroupPolicyAssignmentOutputWithContext(ctx context.Context) GroupPolicyAssignmentOutput

type GroupPolicyAssignmentState

type GroupPolicyAssignmentState struct {
	// A description which should be used for this Policy Assignment.
	Description pulumi.StringPtrInput
	// The Display Name for this Policy Assignment.
	DisplayName pulumi.StringPtrInput
	// Specifies if this Policy should be enforced or not?
	Enforce pulumi.BoolPtrInput
	// An `identity` block as defined below.
	Identity GroupPolicyAssignmentIdentityPtrInput
	// The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
	Location pulumi.StringPtrInput
	// The ID of the Management Group. Changing this forces a new Policy Assignment to be created.
	ManagementGroupId pulumi.StringPtrInput
	// A JSON mapping of any Metadata for this Policy.
	Metadata pulumi.StringPtrInput
	// The name which should be used for this Policy Assignment. Changing this forces a new Policy Assignment to be created.
	Name pulumi.StringPtrInput
	// One or more `nonComplianceMessage` blocks as defined below.
	NonComplianceMessages GroupPolicyAssignmentNonComplianceMessageArrayInput
	// Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
	NotScopes pulumi.StringArrayInput
	// A JSON mapping of any Parameters for this Policy.
	Parameters pulumi.StringPtrInput
	// The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
	PolicyDefinitionId pulumi.StringPtrInput
}

func (GroupPolicyAssignmentState) ElementType

func (GroupPolicyAssignmentState) ElementType() reflect.Type

type GroupPolicyExemption added in v5.2.0

type GroupPolicyExemption struct {
	pulumi.CustomResourceState

	// A description to use for this Policy Exemption.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// A friendly display name to use for this Policy Exemption.
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// The category of this policy exemption. Possible values are `Waiver` and `Mitigated`.
	ExemptionCategory pulumi.StringOutput `pulumi:"exemptionCategory"`
	// The expiration date and time in UTC ISO 8601 format of this policy exemption.
	ExpiresOn pulumi.StringPtrOutput `pulumi:"expiresOn"`
	// The Management Group ID where the Policy Exemption should be applied. Changing this forces a new resource to be created.
	ManagementGroupId pulumi.StringOutput `pulumi:"managementGroupId"`
	// The metadata for this policy exemption. This is a JSON string representing additional metadata that should be stored with the policy exemption.
	Metadata pulumi.StringOutput `pulumi:"metadata"`
	// The name of the Policy Exemption. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the Policy Assignment to be exempted at the specified Scope.
	PolicyAssignmentId pulumi.StringOutput `pulumi:"policyAssignmentId"`
	// The policy definition reference ID list when the associated policy assignment is an assignment of a policy set definition.
	PolicyDefinitionReferenceIds pulumi.StringArrayOutput `pulumi:"policyDefinitionReferenceIds"`
}

Manages a Management Group Policy Exemption.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleGroup, err := management.NewGroup(ctx, "exampleGroup", &management.GroupArgs{
			DisplayName: pulumi.String("Example MgmtGroup"),
		})
		if err != nil {
			return err
		}
		examplePolicySetDefinition, err := policy.LookupPolicySetDefinition(ctx, &policy.LookupPolicySetDefinitionArgs{
			DisplayName: pulumi.StringRef("Audit machines with insecure password security settings"),
		}, nil)
		if err != nil {
			return err
		}
		exampleGroupPolicyAssignment, err := management.NewGroupPolicyAssignment(ctx, "exampleGroupPolicyAssignment", &management.GroupPolicyAssignmentArgs{
			ManagementGroupId:  exampleGroup.ID(),
			PolicyDefinitionId: pulumi.String(examplePolicySetDefinition.Id),
			Location:           pulumi.String("westus"),
			Identity: &management.GroupPolicyAssignmentIdentityArgs{
				Type: pulumi.String("SystemAssigned"),
			},
		})
		if err != nil {
			return err
		}
		_, err = management.NewGroupPolicyExemption(ctx, "exampleGroupPolicyExemption", &management.GroupPolicyExemptionArgs{
			ManagementGroupId:  exampleGroup.ID(),
			PolicyAssignmentId: exampleGroupPolicyAssignment.ID(),
			ExemptionCategory:  pulumi.String("Mitigated"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import azure:management/groupPolicyExemption:GroupPolicyExemption exemption1 /providers/Microsoft.Management/managementGroups/group1/providers/Microsoft.Authorization/policyExemptions/exemption1

```

func GetGroupPolicyExemption added in v5.2.0

func GetGroupPolicyExemption(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GroupPolicyExemptionState, opts ...pulumi.ResourceOption) (*GroupPolicyExemption, error)

GetGroupPolicyExemption gets an existing GroupPolicyExemption 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 NewGroupPolicyExemption added in v5.2.0

func NewGroupPolicyExemption(ctx *pulumi.Context,
	name string, args *GroupPolicyExemptionArgs, opts ...pulumi.ResourceOption) (*GroupPolicyExemption, error)

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

func (*GroupPolicyExemption) ElementType added in v5.2.0

func (*GroupPolicyExemption) ElementType() reflect.Type

func (*GroupPolicyExemption) ToGroupPolicyExemptionOutput added in v5.2.0

func (i *GroupPolicyExemption) ToGroupPolicyExemptionOutput() GroupPolicyExemptionOutput

func (*GroupPolicyExemption) ToGroupPolicyExemptionOutputWithContext added in v5.2.0

func (i *GroupPolicyExemption) ToGroupPolicyExemptionOutputWithContext(ctx context.Context) GroupPolicyExemptionOutput

type GroupPolicyExemptionArgs added in v5.2.0

type GroupPolicyExemptionArgs struct {
	// A description to use for this Policy Exemption.
	Description pulumi.StringPtrInput
	// A friendly display name to use for this Policy Exemption.
	DisplayName pulumi.StringPtrInput
	// The category of this policy exemption. Possible values are `Waiver` and `Mitigated`.
	ExemptionCategory pulumi.StringInput
	// The expiration date and time in UTC ISO 8601 format of this policy exemption.
	ExpiresOn pulumi.StringPtrInput
	// The Management Group ID where the Policy Exemption should be applied. Changing this forces a new resource to be created.
	ManagementGroupId pulumi.StringInput
	// The metadata for this policy exemption. This is a JSON string representing additional metadata that should be stored with the policy exemption.
	Metadata pulumi.StringPtrInput
	// The name of the Policy Exemption. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The ID of the Policy Assignment to be exempted at the specified Scope.
	PolicyAssignmentId pulumi.StringInput
	// The policy definition reference ID list when the associated policy assignment is an assignment of a policy set definition.
	PolicyDefinitionReferenceIds pulumi.StringArrayInput
}

The set of arguments for constructing a GroupPolicyExemption resource.

func (GroupPolicyExemptionArgs) ElementType added in v5.2.0

func (GroupPolicyExemptionArgs) ElementType() reflect.Type

type GroupPolicyExemptionArray added in v5.2.0

type GroupPolicyExemptionArray []GroupPolicyExemptionInput

func (GroupPolicyExemptionArray) ElementType added in v5.2.0

func (GroupPolicyExemptionArray) ElementType() reflect.Type

func (GroupPolicyExemptionArray) ToGroupPolicyExemptionArrayOutput added in v5.2.0

func (i GroupPolicyExemptionArray) ToGroupPolicyExemptionArrayOutput() GroupPolicyExemptionArrayOutput

func (GroupPolicyExemptionArray) ToGroupPolicyExemptionArrayOutputWithContext added in v5.2.0

func (i GroupPolicyExemptionArray) ToGroupPolicyExemptionArrayOutputWithContext(ctx context.Context) GroupPolicyExemptionArrayOutput

type GroupPolicyExemptionArrayInput added in v5.2.0

type GroupPolicyExemptionArrayInput interface {
	pulumi.Input

	ToGroupPolicyExemptionArrayOutput() GroupPolicyExemptionArrayOutput
	ToGroupPolicyExemptionArrayOutputWithContext(context.Context) GroupPolicyExemptionArrayOutput
}

GroupPolicyExemptionArrayInput is an input type that accepts GroupPolicyExemptionArray and GroupPolicyExemptionArrayOutput values. You can construct a concrete instance of `GroupPolicyExemptionArrayInput` via:

GroupPolicyExemptionArray{ GroupPolicyExemptionArgs{...} }

type GroupPolicyExemptionArrayOutput added in v5.2.0

type GroupPolicyExemptionArrayOutput struct{ *pulumi.OutputState }

func (GroupPolicyExemptionArrayOutput) ElementType added in v5.2.0

func (GroupPolicyExemptionArrayOutput) Index added in v5.2.0

func (GroupPolicyExemptionArrayOutput) ToGroupPolicyExemptionArrayOutput added in v5.2.0

func (o GroupPolicyExemptionArrayOutput) ToGroupPolicyExemptionArrayOutput() GroupPolicyExemptionArrayOutput

func (GroupPolicyExemptionArrayOutput) ToGroupPolicyExemptionArrayOutputWithContext added in v5.2.0

func (o GroupPolicyExemptionArrayOutput) ToGroupPolicyExemptionArrayOutputWithContext(ctx context.Context) GroupPolicyExemptionArrayOutput

type GroupPolicyExemptionInput added in v5.2.0

type GroupPolicyExemptionInput interface {
	pulumi.Input

	ToGroupPolicyExemptionOutput() GroupPolicyExemptionOutput
	ToGroupPolicyExemptionOutputWithContext(ctx context.Context) GroupPolicyExemptionOutput
}

type GroupPolicyExemptionMap added in v5.2.0

type GroupPolicyExemptionMap map[string]GroupPolicyExemptionInput

func (GroupPolicyExemptionMap) ElementType added in v5.2.0

func (GroupPolicyExemptionMap) ElementType() reflect.Type

func (GroupPolicyExemptionMap) ToGroupPolicyExemptionMapOutput added in v5.2.0

func (i GroupPolicyExemptionMap) ToGroupPolicyExemptionMapOutput() GroupPolicyExemptionMapOutput

func (GroupPolicyExemptionMap) ToGroupPolicyExemptionMapOutputWithContext added in v5.2.0

func (i GroupPolicyExemptionMap) ToGroupPolicyExemptionMapOutputWithContext(ctx context.Context) GroupPolicyExemptionMapOutput

type GroupPolicyExemptionMapInput added in v5.2.0

type GroupPolicyExemptionMapInput interface {
	pulumi.Input

	ToGroupPolicyExemptionMapOutput() GroupPolicyExemptionMapOutput
	ToGroupPolicyExemptionMapOutputWithContext(context.Context) GroupPolicyExemptionMapOutput
}

GroupPolicyExemptionMapInput is an input type that accepts GroupPolicyExemptionMap and GroupPolicyExemptionMapOutput values. You can construct a concrete instance of `GroupPolicyExemptionMapInput` via:

GroupPolicyExemptionMap{ "key": GroupPolicyExemptionArgs{...} }

type GroupPolicyExemptionMapOutput added in v5.2.0

type GroupPolicyExemptionMapOutput struct{ *pulumi.OutputState }

func (GroupPolicyExemptionMapOutput) ElementType added in v5.2.0

func (GroupPolicyExemptionMapOutput) MapIndex added in v5.2.0

func (GroupPolicyExemptionMapOutput) ToGroupPolicyExemptionMapOutput added in v5.2.0

func (o GroupPolicyExemptionMapOutput) ToGroupPolicyExemptionMapOutput() GroupPolicyExemptionMapOutput

func (GroupPolicyExemptionMapOutput) ToGroupPolicyExemptionMapOutputWithContext added in v5.2.0

func (o GroupPolicyExemptionMapOutput) ToGroupPolicyExemptionMapOutputWithContext(ctx context.Context) GroupPolicyExemptionMapOutput

type GroupPolicyExemptionOutput added in v5.2.0

type GroupPolicyExemptionOutput struct{ *pulumi.OutputState }

func (GroupPolicyExemptionOutput) ElementType added in v5.2.0

func (GroupPolicyExemptionOutput) ElementType() reflect.Type

func (GroupPolicyExemptionOutput) ToGroupPolicyExemptionOutput added in v5.2.0

func (o GroupPolicyExemptionOutput) ToGroupPolicyExemptionOutput() GroupPolicyExemptionOutput

func (GroupPolicyExemptionOutput) ToGroupPolicyExemptionOutputWithContext added in v5.2.0

func (o GroupPolicyExemptionOutput) ToGroupPolicyExemptionOutputWithContext(ctx context.Context) GroupPolicyExemptionOutput

type GroupPolicyExemptionState added in v5.2.0

type GroupPolicyExemptionState struct {
	// A description to use for this Policy Exemption.
	Description pulumi.StringPtrInput
	// A friendly display name to use for this Policy Exemption.
	DisplayName pulumi.StringPtrInput
	// The category of this policy exemption. Possible values are `Waiver` and `Mitigated`.
	ExemptionCategory pulumi.StringPtrInput
	// The expiration date and time in UTC ISO 8601 format of this policy exemption.
	ExpiresOn pulumi.StringPtrInput
	// The Management Group ID where the Policy Exemption should be applied. Changing this forces a new resource to be created.
	ManagementGroupId pulumi.StringPtrInput
	// The metadata for this policy exemption. This is a JSON string representing additional metadata that should be stored with the policy exemption.
	Metadata pulumi.StringPtrInput
	// The name of the Policy Exemption. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The ID of the Policy Assignment to be exempted at the specified Scope.
	PolicyAssignmentId pulumi.StringPtrInput
	// The policy definition reference ID list when the associated policy assignment is an assignment of a policy set definition.
	PolicyDefinitionReferenceIds pulumi.StringArrayInput
}

func (GroupPolicyExemptionState) ElementType added in v5.2.0

func (GroupPolicyExemptionState) ElementType() reflect.Type

type GroupPolicyRemediation

type GroupPolicyRemediation struct {
	pulumi.CustomResourceState

	LocationFilters       pulumi.StringArrayOutput `pulumi:"locationFilters"`
	ManagementGroupId     pulumi.StringOutput      `pulumi:"managementGroupId"`
	Name                  pulumi.StringOutput      `pulumi:"name"`
	PolicyAssignmentId    pulumi.StringOutput      `pulumi:"policyAssignmentId"`
	PolicyDefinitionId    pulumi.StringPtrOutput   `pulumi:"policyDefinitionId"`
	ResourceDiscoveryMode pulumi.StringPtrOutput   `pulumi:"resourceDiscoveryMode"`
}

func GetGroupPolicyRemediation

func GetGroupPolicyRemediation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GroupPolicyRemediationState, opts ...pulumi.ResourceOption) (*GroupPolicyRemediation, error)

GetGroupPolicyRemediation gets an existing GroupPolicyRemediation 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 NewGroupPolicyRemediation

func NewGroupPolicyRemediation(ctx *pulumi.Context,
	name string, args *GroupPolicyRemediationArgs, opts ...pulumi.ResourceOption) (*GroupPolicyRemediation, error)

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

func (*GroupPolicyRemediation) ElementType

func (*GroupPolicyRemediation) ElementType() reflect.Type

func (*GroupPolicyRemediation) ToGroupPolicyRemediationOutput

func (i *GroupPolicyRemediation) ToGroupPolicyRemediationOutput() GroupPolicyRemediationOutput

func (*GroupPolicyRemediation) ToGroupPolicyRemediationOutputWithContext

func (i *GroupPolicyRemediation) ToGroupPolicyRemediationOutputWithContext(ctx context.Context) GroupPolicyRemediationOutput

type GroupPolicyRemediationArgs

type GroupPolicyRemediationArgs struct {
	LocationFilters       pulumi.StringArrayInput
	ManagementGroupId     pulumi.StringInput
	Name                  pulumi.StringPtrInput
	PolicyAssignmentId    pulumi.StringInput
	PolicyDefinitionId    pulumi.StringPtrInput
	ResourceDiscoveryMode pulumi.StringPtrInput
}

The set of arguments for constructing a GroupPolicyRemediation resource.

func (GroupPolicyRemediationArgs) ElementType

func (GroupPolicyRemediationArgs) ElementType() reflect.Type

type GroupPolicyRemediationArray

type GroupPolicyRemediationArray []GroupPolicyRemediationInput

func (GroupPolicyRemediationArray) ElementType

func (GroupPolicyRemediationArray) ToGroupPolicyRemediationArrayOutput

func (i GroupPolicyRemediationArray) ToGroupPolicyRemediationArrayOutput() GroupPolicyRemediationArrayOutput

func (GroupPolicyRemediationArray) ToGroupPolicyRemediationArrayOutputWithContext

func (i GroupPolicyRemediationArray) ToGroupPolicyRemediationArrayOutputWithContext(ctx context.Context) GroupPolicyRemediationArrayOutput

type GroupPolicyRemediationArrayInput

type GroupPolicyRemediationArrayInput interface {
	pulumi.Input

	ToGroupPolicyRemediationArrayOutput() GroupPolicyRemediationArrayOutput
	ToGroupPolicyRemediationArrayOutputWithContext(context.Context) GroupPolicyRemediationArrayOutput
}

GroupPolicyRemediationArrayInput is an input type that accepts GroupPolicyRemediationArray and GroupPolicyRemediationArrayOutput values. You can construct a concrete instance of `GroupPolicyRemediationArrayInput` via:

GroupPolicyRemediationArray{ GroupPolicyRemediationArgs{...} }

type GroupPolicyRemediationArrayOutput

type GroupPolicyRemediationArrayOutput struct{ *pulumi.OutputState }

func (GroupPolicyRemediationArrayOutput) ElementType

func (GroupPolicyRemediationArrayOutput) Index

func (GroupPolicyRemediationArrayOutput) ToGroupPolicyRemediationArrayOutput

func (o GroupPolicyRemediationArrayOutput) ToGroupPolicyRemediationArrayOutput() GroupPolicyRemediationArrayOutput

func (GroupPolicyRemediationArrayOutput) ToGroupPolicyRemediationArrayOutputWithContext

func (o GroupPolicyRemediationArrayOutput) ToGroupPolicyRemediationArrayOutputWithContext(ctx context.Context) GroupPolicyRemediationArrayOutput

type GroupPolicyRemediationInput

type GroupPolicyRemediationInput interface {
	pulumi.Input

	ToGroupPolicyRemediationOutput() GroupPolicyRemediationOutput
	ToGroupPolicyRemediationOutputWithContext(ctx context.Context) GroupPolicyRemediationOutput
}

type GroupPolicyRemediationMap

type GroupPolicyRemediationMap map[string]GroupPolicyRemediationInput

func (GroupPolicyRemediationMap) ElementType

func (GroupPolicyRemediationMap) ElementType() reflect.Type

func (GroupPolicyRemediationMap) ToGroupPolicyRemediationMapOutput

func (i GroupPolicyRemediationMap) ToGroupPolicyRemediationMapOutput() GroupPolicyRemediationMapOutput

func (GroupPolicyRemediationMap) ToGroupPolicyRemediationMapOutputWithContext

func (i GroupPolicyRemediationMap) ToGroupPolicyRemediationMapOutputWithContext(ctx context.Context) GroupPolicyRemediationMapOutput

type GroupPolicyRemediationMapInput

type GroupPolicyRemediationMapInput interface {
	pulumi.Input

	ToGroupPolicyRemediationMapOutput() GroupPolicyRemediationMapOutput
	ToGroupPolicyRemediationMapOutputWithContext(context.Context) GroupPolicyRemediationMapOutput
}

GroupPolicyRemediationMapInput is an input type that accepts GroupPolicyRemediationMap and GroupPolicyRemediationMapOutput values. You can construct a concrete instance of `GroupPolicyRemediationMapInput` via:

GroupPolicyRemediationMap{ "key": GroupPolicyRemediationArgs{...} }

type GroupPolicyRemediationMapOutput

type GroupPolicyRemediationMapOutput struct{ *pulumi.OutputState }

func (GroupPolicyRemediationMapOutput) ElementType

func (GroupPolicyRemediationMapOutput) MapIndex

func (GroupPolicyRemediationMapOutput) ToGroupPolicyRemediationMapOutput

func (o GroupPolicyRemediationMapOutput) ToGroupPolicyRemediationMapOutput() GroupPolicyRemediationMapOutput

func (GroupPolicyRemediationMapOutput) ToGroupPolicyRemediationMapOutputWithContext

func (o GroupPolicyRemediationMapOutput) ToGroupPolicyRemediationMapOutputWithContext(ctx context.Context) GroupPolicyRemediationMapOutput

type GroupPolicyRemediationOutput

type GroupPolicyRemediationOutput struct{ *pulumi.OutputState }

func (GroupPolicyRemediationOutput) ElementType

func (GroupPolicyRemediationOutput) ToGroupPolicyRemediationOutput

func (o GroupPolicyRemediationOutput) ToGroupPolicyRemediationOutput() GroupPolicyRemediationOutput

func (GroupPolicyRemediationOutput) ToGroupPolicyRemediationOutputWithContext

func (o GroupPolicyRemediationOutput) ToGroupPolicyRemediationOutputWithContext(ctx context.Context) GroupPolicyRemediationOutput

type GroupPolicyRemediationState

type GroupPolicyRemediationState struct {
	LocationFilters       pulumi.StringArrayInput
	ManagementGroupId     pulumi.StringPtrInput
	Name                  pulumi.StringPtrInput
	PolicyAssignmentId    pulumi.StringPtrInput
	PolicyDefinitionId    pulumi.StringPtrInput
	ResourceDiscoveryMode pulumi.StringPtrInput
}

func (GroupPolicyRemediationState) ElementType

type GroupState

type GroupState struct {
	// A friendly name for this Management Group. If not specified, this will 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.
	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 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/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/management"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleGroup, err := management.LookupGroup(ctx, &management.LookupGroupArgs{
			Name: pulumi.StringRef("exampleManagementGroup"),
		}, nil)
		if err != nil {
			return err
		}
		exampleSubscription, err := core.LookupSubscription(ctx, &core.LookupSubscriptionArgs{
			SubscriptionId: pulumi.StringRef("12345678-1234-1234-1234-123456789012"),
		}, 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

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

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.

## Example Usage

```go package main

import (

"fmt"

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleGroup, err := management.LookupGroup(ctx, &management.LookupGroupArgs{
			Name: pulumi.StringRef("00000000-0000-0000-0000-000000000000"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = management.NewGroupTemplateDeployment(ctx, "exampleGroupTemplateDeployment", &management.GroupTemplateDeploymentArgs{
			Location:          pulumi.String("West Europe"),
			ManagementGroupId: pulumi.String(exampleGroup.Id),
			TemplateContent:   pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", "  \"", "$", "schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#\",\n", "  \"contentVersion\": \"1.0.0.0\",\n", "  \"parameters\": {\n", "    \"policyAssignmentName\": {\n", "      \"type\": \"string\",\n", "      \"defaultValue\": \"[guid(parameters('policyDefinitionID'), resourceGroup().name)]\",\n", "      \"metadata\": {\n", "        \"description\": \"Specifies the name of the policy assignment, can be used defined or an idempotent name as the defaultValue provides.\"\n", "      }\n", "    },\n", "    \"policyDefinitionID\": {\n", "      \"type\": \"string\",\n", "      \"metadata\": {\n", "        \"description\": \"Specifies the ID of the policy definition or policy set definition being assigned.\"\n", "      }\n", "    }\n", "  },\n", "  \"resources\": [\n", "    {\n", "      \"type\": \"Microsoft.Authorization/policyAssignments\",\n", "      \"name\": \"[parameters('policyAssignmentName')]\",\n", "      \"apiVersion\": \"2019-09-01\",\n", "      \"properties\": {\n", "        \"scope\": \"[subscriptionResourceId('Microsoft.Resources/resourceGroups', resourceGroup().name)]\",\n", "        \"policyDefinitionId\": \"[parameters('policyDefinitionID')]\"\n", "      }\n", "    }\n", "  ]\n", "}\n")),
			ParametersContent: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v", "{\n", "  \"", "$", "schema\": \"https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#\",\n", "  \"contentVersion\": \"1.0.0.0\",\n", "  \"parameters\": {\n", "    \"policyDefinitionID\": {\n", "      \"value\": \"/providers/Microsoft.Authorization/policyDefinitions/0a914e76-4921-4c19-b460-a2d36003525a\"\n", "    }\n", "  }\n", "}\n")),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

```go package main

import (

"io/ioutil"

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

)

func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := ioutil.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleGroup, err := management.LookupGroup(ctx, &management.LookupGroupArgs{
			Name: pulumi.StringRef("00000000-0000-0000-0000-000000000000"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = management.NewGroupTemplateDeployment(ctx, "exampleGroupTemplateDeployment", &management.GroupTemplateDeploymentArgs{
			Location:          pulumi.String("West Europe"),
			ManagementGroupId: pulumi.String(exampleGroup.Id),
			TemplateContent:   readFileOrPanic("templates/example-deploy-template.json"),
			ParametersContent: readFileOrPanic("templates/example-deploy-params.json"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleGroup, err := management.LookupGroup(ctx, &management.LookupGroupArgs{
			Name: pulumi.StringRef("00000000-0000-0000-0000-000000000000"),
		}, nil)
		if err != nil {
			return err
		}
		exampleTemplateSpecVersion, err := core.GetTemplateSpecVersion(ctx, &core.GetTemplateSpecVersionArgs{
			Name:              "exampleTemplateForManagementGroup",
			ResourceGroupName: "exampleResourceGroup",
			Version:           "v1.0.9",
		}, nil)
		if err != nil {
			return err
		}
		_, err = management.NewGroupTemplateDeployment(ctx, "exampleGroupTemplateDeployment", &management.GroupTemplateDeploymentArgs{
			Location:              pulumi.String("West Europe"),
			ManagementGroupId:     pulumi.String(exampleGroup.Id),
			TemplateSpecVersionId: pulumi.String(exampleTemplateSpecVersion.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## 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

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

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/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/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
	})
}

``` ### Resource Group Level Lock)

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/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/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/management"
"github.com/pulumi/pulumi-azure/sdk/v5/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

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

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.
	Name *string `pulumi:"name"`
}

A collection of arguments for invoking getGroup.

type LookupGroupOutputArgs

type LookupGroupOutputArgs struct {
	// Specifies the display name of this Management Group.
	DisplayName pulumi.StringPtrInput `pulumi:"displayName"`
	// Specifies the name or UUID of this Management Group.
	Name pulumi.StringPtrInput `pulumi:"name"`
}

A collection of arguments for invoking getGroup.

func (LookupGroupOutputArgs) ElementType

func (LookupGroupOutputArgs) ElementType() reflect.Type

type LookupGroupResult

type LookupGroupResult struct {
	DisplayName string `pulumi:"displayName"`
	// 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/v5/go/azure/management"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

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

```

type LookupGroupResultOutput

type LookupGroupResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getGroup.

func (LookupGroupResultOutput) DisplayName

func (LookupGroupResultOutput) ElementType

func (LookupGroupResultOutput) ElementType() reflect.Type

func (LookupGroupResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupGroupResultOutput) Name

func (LookupGroupResultOutput) ParentManagementGroupId

func (o LookupGroupResultOutput) ParentManagementGroupId() pulumi.StringOutput

The ID of any Parent Management Group.

func (LookupGroupResultOutput) SubscriptionIds

func (o LookupGroupResultOutput) SubscriptionIds() pulumi.StringArrayOutput

A list of Subscription IDs which are assigned to the Management Group.

func (LookupGroupResultOutput) ToLookupGroupResultOutput

func (o LookupGroupResultOutput) ToLookupGroupResultOutput() LookupGroupResultOutput

func (LookupGroupResultOutput) ToLookupGroupResultOutputWithContext

func (o LookupGroupResultOutput) ToLookupGroupResultOutputWithContext(ctx context.Context) LookupGroupResultOutput

Jump to

Keyboard shortcuts

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