core

package
v4.10.0 Latest Latest
Warning

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

Go to latest
Published: Jul 12, 2021 License: Apache-2.0 Imports: 7 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CustomProvider

type CustomProvider struct {
	pulumi.CustomResourceState

	// Any number of `action` block as defined below. One of `resourceType` or `action` must be specified.
	Actions CustomProviderActionArrayOutput `pulumi:"actions"`
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of the Custom Provider. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the resource group in which to create the Custom Provider.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Any number of `resourceType` block as defined below. One of `resourceType` or `action` must be specified.
	ResourceTypes CustomProviderResourceTypeArrayOutput `pulumi:"resourceTypes"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Any number of `validation` block as defined below.
	Validations CustomProviderValidationArrayOutput `pulumi:"validations"`
}

Manages an Azure Custom Provider.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"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
		}
		_, err = core.NewCustomProvider(ctx, "exampleCustomProvider", &core.CustomProviderArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			ResourceTypes: core.CustomProviderResourceTypeArray{
				&core.CustomProviderResourceTypeArgs{
					Name:     pulumi.String("dEf1"),
					Endpoint: pulumi.String("https://testendpoint.com/"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import azure:core/customProvider:CustomProvider example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example/providers/Microsoft.CustomProviders/resourceProviders/example

```

func GetCustomProvider

func GetCustomProvider(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CustomProviderState, opts ...pulumi.ResourceOption) (*CustomProvider, error)

GetCustomProvider gets an existing CustomProvider 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 NewCustomProvider

func NewCustomProvider(ctx *pulumi.Context,
	name string, args *CustomProviderArgs, opts ...pulumi.ResourceOption) (*CustomProvider, error)

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

func (*CustomProvider) ElementType

func (*CustomProvider) ElementType() reflect.Type

func (*CustomProvider) ToCustomProviderOutput

func (i *CustomProvider) ToCustomProviderOutput() CustomProviderOutput

func (*CustomProvider) ToCustomProviderOutputWithContext

func (i *CustomProvider) ToCustomProviderOutputWithContext(ctx context.Context) CustomProviderOutput

func (*CustomProvider) ToCustomProviderPtrOutput

func (i *CustomProvider) ToCustomProviderPtrOutput() CustomProviderPtrOutput

func (*CustomProvider) ToCustomProviderPtrOutputWithContext

func (i *CustomProvider) ToCustomProviderPtrOutputWithContext(ctx context.Context) CustomProviderPtrOutput

type CustomProviderAction

type CustomProviderAction struct {
	// Specifies the endpoint of the action.
	Endpoint string `pulumi:"endpoint"`
	// Specifies the name of the action.
	Name string `pulumi:"name"`
}

type CustomProviderActionArgs

type CustomProviderActionArgs struct {
	// Specifies the endpoint of the action.
	Endpoint pulumi.StringInput `pulumi:"endpoint"`
	// Specifies the name of the action.
	Name pulumi.StringInput `pulumi:"name"`
}

func (CustomProviderActionArgs) ElementType

func (CustomProviderActionArgs) ElementType() reflect.Type

func (CustomProviderActionArgs) ToCustomProviderActionOutput

func (i CustomProviderActionArgs) ToCustomProviderActionOutput() CustomProviderActionOutput

func (CustomProviderActionArgs) ToCustomProviderActionOutputWithContext

func (i CustomProviderActionArgs) ToCustomProviderActionOutputWithContext(ctx context.Context) CustomProviderActionOutput

type CustomProviderActionArray

type CustomProviderActionArray []CustomProviderActionInput

func (CustomProviderActionArray) ElementType

func (CustomProviderActionArray) ElementType() reflect.Type

func (CustomProviderActionArray) ToCustomProviderActionArrayOutput

func (i CustomProviderActionArray) ToCustomProviderActionArrayOutput() CustomProviderActionArrayOutput

func (CustomProviderActionArray) ToCustomProviderActionArrayOutputWithContext

func (i CustomProviderActionArray) ToCustomProviderActionArrayOutputWithContext(ctx context.Context) CustomProviderActionArrayOutput

type CustomProviderActionArrayInput

type CustomProviderActionArrayInput interface {
	pulumi.Input

	ToCustomProviderActionArrayOutput() CustomProviderActionArrayOutput
	ToCustomProviderActionArrayOutputWithContext(context.Context) CustomProviderActionArrayOutput
}

CustomProviderActionArrayInput is an input type that accepts CustomProviderActionArray and CustomProviderActionArrayOutput values. You can construct a concrete instance of `CustomProviderActionArrayInput` via:

CustomProviderActionArray{ CustomProviderActionArgs{...} }

type CustomProviderActionArrayOutput

type CustomProviderActionArrayOutput struct{ *pulumi.OutputState }

func (CustomProviderActionArrayOutput) ElementType

func (CustomProviderActionArrayOutput) Index

func (CustomProviderActionArrayOutput) ToCustomProviderActionArrayOutput

func (o CustomProviderActionArrayOutput) ToCustomProviderActionArrayOutput() CustomProviderActionArrayOutput

func (CustomProviderActionArrayOutput) ToCustomProviderActionArrayOutputWithContext

func (o CustomProviderActionArrayOutput) ToCustomProviderActionArrayOutputWithContext(ctx context.Context) CustomProviderActionArrayOutput

type CustomProviderActionInput

type CustomProviderActionInput interface {
	pulumi.Input

	ToCustomProviderActionOutput() CustomProviderActionOutput
	ToCustomProviderActionOutputWithContext(context.Context) CustomProviderActionOutput
}

CustomProviderActionInput is an input type that accepts CustomProviderActionArgs and CustomProviderActionOutput values. You can construct a concrete instance of `CustomProviderActionInput` via:

CustomProviderActionArgs{...}

type CustomProviderActionOutput

type CustomProviderActionOutput struct{ *pulumi.OutputState }

func (CustomProviderActionOutput) ElementType

func (CustomProviderActionOutput) ElementType() reflect.Type

func (CustomProviderActionOutput) Endpoint

Specifies the endpoint of the action.

func (CustomProviderActionOutput) Name

Specifies the name of the action.

func (CustomProviderActionOutput) ToCustomProviderActionOutput

func (o CustomProviderActionOutput) ToCustomProviderActionOutput() CustomProviderActionOutput

func (CustomProviderActionOutput) ToCustomProviderActionOutputWithContext

func (o CustomProviderActionOutput) ToCustomProviderActionOutputWithContext(ctx context.Context) CustomProviderActionOutput

type CustomProviderArgs

type CustomProviderArgs struct {
	// Any number of `action` block as defined below. One of `resourceType` or `action` must be specified.
	Actions CustomProviderActionArrayInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the Custom Provider. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group in which to create the Custom Provider.
	ResourceGroupName pulumi.StringInput
	// Any number of `resourceType` block as defined below. One of `resourceType` or `action` must be specified.
	ResourceTypes CustomProviderResourceTypeArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Any number of `validation` block as defined below.
	Validations CustomProviderValidationArrayInput
}

The set of arguments for constructing a CustomProvider resource.

func (CustomProviderArgs) ElementType

func (CustomProviderArgs) ElementType() reflect.Type

type CustomProviderArray

type CustomProviderArray []CustomProviderInput

func (CustomProviderArray) ElementType

func (CustomProviderArray) ElementType() reflect.Type

func (CustomProviderArray) ToCustomProviderArrayOutput

func (i CustomProviderArray) ToCustomProviderArrayOutput() CustomProviderArrayOutput

func (CustomProviderArray) ToCustomProviderArrayOutputWithContext

func (i CustomProviderArray) ToCustomProviderArrayOutputWithContext(ctx context.Context) CustomProviderArrayOutput

type CustomProviderArrayInput

type CustomProviderArrayInput interface {
	pulumi.Input

	ToCustomProviderArrayOutput() CustomProviderArrayOutput
	ToCustomProviderArrayOutputWithContext(context.Context) CustomProviderArrayOutput
}

CustomProviderArrayInput is an input type that accepts CustomProviderArray and CustomProviderArrayOutput values. You can construct a concrete instance of `CustomProviderArrayInput` via:

CustomProviderArray{ CustomProviderArgs{...} }

type CustomProviderArrayOutput

type CustomProviderArrayOutput struct{ *pulumi.OutputState }

func (CustomProviderArrayOutput) ElementType

func (CustomProviderArrayOutput) ElementType() reflect.Type

func (CustomProviderArrayOutput) Index

func (CustomProviderArrayOutput) ToCustomProviderArrayOutput

func (o CustomProviderArrayOutput) ToCustomProviderArrayOutput() CustomProviderArrayOutput

func (CustomProviderArrayOutput) ToCustomProviderArrayOutputWithContext

func (o CustomProviderArrayOutput) ToCustomProviderArrayOutputWithContext(ctx context.Context) CustomProviderArrayOutput

type CustomProviderInput

type CustomProviderInput interface {
	pulumi.Input

	ToCustomProviderOutput() CustomProviderOutput
	ToCustomProviderOutputWithContext(ctx context.Context) CustomProviderOutput
}

type CustomProviderMap

type CustomProviderMap map[string]CustomProviderInput

func (CustomProviderMap) ElementType

func (CustomProviderMap) ElementType() reflect.Type

func (CustomProviderMap) ToCustomProviderMapOutput

func (i CustomProviderMap) ToCustomProviderMapOutput() CustomProviderMapOutput

func (CustomProviderMap) ToCustomProviderMapOutputWithContext

func (i CustomProviderMap) ToCustomProviderMapOutputWithContext(ctx context.Context) CustomProviderMapOutput

type CustomProviderMapInput

type CustomProviderMapInput interface {
	pulumi.Input

	ToCustomProviderMapOutput() CustomProviderMapOutput
	ToCustomProviderMapOutputWithContext(context.Context) CustomProviderMapOutput
}

CustomProviderMapInput is an input type that accepts CustomProviderMap and CustomProviderMapOutput values. You can construct a concrete instance of `CustomProviderMapInput` via:

CustomProviderMap{ "key": CustomProviderArgs{...} }

type CustomProviderMapOutput

type CustomProviderMapOutput struct{ *pulumi.OutputState }

func (CustomProviderMapOutput) ElementType

func (CustomProviderMapOutput) ElementType() reflect.Type

func (CustomProviderMapOutput) MapIndex

func (CustomProviderMapOutput) ToCustomProviderMapOutput

func (o CustomProviderMapOutput) ToCustomProviderMapOutput() CustomProviderMapOutput

func (CustomProviderMapOutput) ToCustomProviderMapOutputWithContext

func (o CustomProviderMapOutput) ToCustomProviderMapOutputWithContext(ctx context.Context) CustomProviderMapOutput

type CustomProviderOutput

type CustomProviderOutput struct {
	*pulumi.OutputState
}

func (CustomProviderOutput) ElementType

func (CustomProviderOutput) ElementType() reflect.Type

func (CustomProviderOutput) ToCustomProviderOutput

func (o CustomProviderOutput) ToCustomProviderOutput() CustomProviderOutput

func (CustomProviderOutput) ToCustomProviderOutputWithContext

func (o CustomProviderOutput) ToCustomProviderOutputWithContext(ctx context.Context) CustomProviderOutput

func (CustomProviderOutput) ToCustomProviderPtrOutput

func (o CustomProviderOutput) ToCustomProviderPtrOutput() CustomProviderPtrOutput

func (CustomProviderOutput) ToCustomProviderPtrOutputWithContext

func (o CustomProviderOutput) ToCustomProviderPtrOutputWithContext(ctx context.Context) CustomProviderPtrOutput

type CustomProviderPtrInput

type CustomProviderPtrInput interface {
	pulumi.Input

	ToCustomProviderPtrOutput() CustomProviderPtrOutput
	ToCustomProviderPtrOutputWithContext(ctx context.Context) CustomProviderPtrOutput
}

type CustomProviderPtrOutput

type CustomProviderPtrOutput struct {
	*pulumi.OutputState
}

func (CustomProviderPtrOutput) ElementType

func (CustomProviderPtrOutput) ElementType() reflect.Type

func (CustomProviderPtrOutput) ToCustomProviderPtrOutput

func (o CustomProviderPtrOutput) ToCustomProviderPtrOutput() CustomProviderPtrOutput

func (CustomProviderPtrOutput) ToCustomProviderPtrOutputWithContext

func (o CustomProviderPtrOutput) ToCustomProviderPtrOutputWithContext(ctx context.Context) CustomProviderPtrOutput

type CustomProviderResourceType

type CustomProviderResourceType struct {
	// Specifies the endpoint of the route definition.
	Endpoint string `pulumi:"endpoint"`
	// Specifies the name of the route definition.
	Name string `pulumi:"name"`
	// The routing type that is supported for the resource request. Valid values are `ResourceTypeRoutingProxy` or `ResourceTypeRoutingProxyCache`. This value defaults to `ResourceTypeRoutingProxy`.
	RoutingType *string `pulumi:"routingType"`
}

type CustomProviderResourceTypeArgs

type CustomProviderResourceTypeArgs struct {
	// Specifies the endpoint of the route definition.
	Endpoint pulumi.StringInput `pulumi:"endpoint"`
	// Specifies the name of the route definition.
	Name pulumi.StringInput `pulumi:"name"`
	// The routing type that is supported for the resource request. Valid values are `ResourceTypeRoutingProxy` or `ResourceTypeRoutingProxyCache`. This value defaults to `ResourceTypeRoutingProxy`.
	RoutingType pulumi.StringPtrInput `pulumi:"routingType"`
}

func (CustomProviderResourceTypeArgs) ElementType

func (CustomProviderResourceTypeArgs) ToCustomProviderResourceTypeOutput

func (i CustomProviderResourceTypeArgs) ToCustomProviderResourceTypeOutput() CustomProviderResourceTypeOutput

func (CustomProviderResourceTypeArgs) ToCustomProviderResourceTypeOutputWithContext

func (i CustomProviderResourceTypeArgs) ToCustomProviderResourceTypeOutputWithContext(ctx context.Context) CustomProviderResourceTypeOutput

type CustomProviderResourceTypeArray

type CustomProviderResourceTypeArray []CustomProviderResourceTypeInput

func (CustomProviderResourceTypeArray) ElementType

func (CustomProviderResourceTypeArray) ToCustomProviderResourceTypeArrayOutput

func (i CustomProviderResourceTypeArray) ToCustomProviderResourceTypeArrayOutput() CustomProviderResourceTypeArrayOutput

func (CustomProviderResourceTypeArray) ToCustomProviderResourceTypeArrayOutputWithContext

func (i CustomProviderResourceTypeArray) ToCustomProviderResourceTypeArrayOutputWithContext(ctx context.Context) CustomProviderResourceTypeArrayOutput

type CustomProviderResourceTypeArrayInput

type CustomProviderResourceTypeArrayInput interface {
	pulumi.Input

	ToCustomProviderResourceTypeArrayOutput() CustomProviderResourceTypeArrayOutput
	ToCustomProviderResourceTypeArrayOutputWithContext(context.Context) CustomProviderResourceTypeArrayOutput
}

CustomProviderResourceTypeArrayInput is an input type that accepts CustomProviderResourceTypeArray and CustomProviderResourceTypeArrayOutput values. You can construct a concrete instance of `CustomProviderResourceTypeArrayInput` via:

CustomProviderResourceTypeArray{ CustomProviderResourceTypeArgs{...} }

type CustomProviderResourceTypeArrayOutput

type CustomProviderResourceTypeArrayOutput struct{ *pulumi.OutputState }

func (CustomProviderResourceTypeArrayOutput) ElementType

func (CustomProviderResourceTypeArrayOutput) Index

func (CustomProviderResourceTypeArrayOutput) ToCustomProviderResourceTypeArrayOutput

func (o CustomProviderResourceTypeArrayOutput) ToCustomProviderResourceTypeArrayOutput() CustomProviderResourceTypeArrayOutput

func (CustomProviderResourceTypeArrayOutput) ToCustomProviderResourceTypeArrayOutputWithContext

func (o CustomProviderResourceTypeArrayOutput) ToCustomProviderResourceTypeArrayOutputWithContext(ctx context.Context) CustomProviderResourceTypeArrayOutput

type CustomProviderResourceTypeInput

type CustomProviderResourceTypeInput interface {
	pulumi.Input

	ToCustomProviderResourceTypeOutput() CustomProviderResourceTypeOutput
	ToCustomProviderResourceTypeOutputWithContext(context.Context) CustomProviderResourceTypeOutput
}

CustomProviderResourceTypeInput is an input type that accepts CustomProviderResourceTypeArgs and CustomProviderResourceTypeOutput values. You can construct a concrete instance of `CustomProviderResourceTypeInput` via:

CustomProviderResourceTypeArgs{...}

type CustomProviderResourceTypeOutput

type CustomProviderResourceTypeOutput struct{ *pulumi.OutputState }

func (CustomProviderResourceTypeOutput) ElementType

func (CustomProviderResourceTypeOutput) Endpoint

Specifies the endpoint of the route definition.

func (CustomProviderResourceTypeOutput) Name

Specifies the name of the route definition.

func (CustomProviderResourceTypeOutput) RoutingType

The routing type that is supported for the resource request. Valid values are `ResourceTypeRoutingProxy` or `ResourceTypeRoutingProxyCache`. This value defaults to `ResourceTypeRoutingProxy`.

func (CustomProviderResourceTypeOutput) ToCustomProviderResourceTypeOutput

func (o CustomProviderResourceTypeOutput) ToCustomProviderResourceTypeOutput() CustomProviderResourceTypeOutput

func (CustomProviderResourceTypeOutput) ToCustomProviderResourceTypeOutputWithContext

func (o CustomProviderResourceTypeOutput) ToCustomProviderResourceTypeOutputWithContext(ctx context.Context) CustomProviderResourceTypeOutput

type CustomProviderState

type CustomProviderState struct {
	// Any number of `action` block as defined below. One of `resourceType` or `action` must be specified.
	Actions CustomProviderActionArrayInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the Custom Provider. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group in which to create the Custom Provider.
	ResourceGroupName pulumi.StringPtrInput
	// Any number of `resourceType` block as defined below. One of `resourceType` or `action` must be specified.
	ResourceTypes CustomProviderResourceTypeArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Any number of `validation` block as defined below.
	Validations CustomProviderValidationArrayInput
}

func (CustomProviderState) ElementType

func (CustomProviderState) ElementType() reflect.Type

type CustomProviderValidation

type CustomProviderValidation struct {
	// The endpoint where the validation specification is located.
	Specification string `pulumi:"specification"`
}

type CustomProviderValidationArgs

type CustomProviderValidationArgs struct {
	// The endpoint where the validation specification is located.
	Specification pulumi.StringInput `pulumi:"specification"`
}

func (CustomProviderValidationArgs) ElementType

func (CustomProviderValidationArgs) ToCustomProviderValidationOutput

func (i CustomProviderValidationArgs) ToCustomProviderValidationOutput() CustomProviderValidationOutput

func (CustomProviderValidationArgs) ToCustomProviderValidationOutputWithContext

func (i CustomProviderValidationArgs) ToCustomProviderValidationOutputWithContext(ctx context.Context) CustomProviderValidationOutput

type CustomProviderValidationArray

type CustomProviderValidationArray []CustomProviderValidationInput

func (CustomProviderValidationArray) ElementType

func (CustomProviderValidationArray) ToCustomProviderValidationArrayOutput

func (i CustomProviderValidationArray) ToCustomProviderValidationArrayOutput() CustomProviderValidationArrayOutput

func (CustomProviderValidationArray) ToCustomProviderValidationArrayOutputWithContext

func (i CustomProviderValidationArray) ToCustomProviderValidationArrayOutputWithContext(ctx context.Context) CustomProviderValidationArrayOutput

type CustomProviderValidationArrayInput

type CustomProviderValidationArrayInput interface {
	pulumi.Input

	ToCustomProviderValidationArrayOutput() CustomProviderValidationArrayOutput
	ToCustomProviderValidationArrayOutputWithContext(context.Context) CustomProviderValidationArrayOutput
}

CustomProviderValidationArrayInput is an input type that accepts CustomProviderValidationArray and CustomProviderValidationArrayOutput values. You can construct a concrete instance of `CustomProviderValidationArrayInput` via:

CustomProviderValidationArray{ CustomProviderValidationArgs{...} }

type CustomProviderValidationArrayOutput

type CustomProviderValidationArrayOutput struct{ *pulumi.OutputState }

func (CustomProviderValidationArrayOutput) ElementType

func (CustomProviderValidationArrayOutput) Index

func (CustomProviderValidationArrayOutput) ToCustomProviderValidationArrayOutput

func (o CustomProviderValidationArrayOutput) ToCustomProviderValidationArrayOutput() CustomProviderValidationArrayOutput

func (CustomProviderValidationArrayOutput) ToCustomProviderValidationArrayOutputWithContext

func (o CustomProviderValidationArrayOutput) ToCustomProviderValidationArrayOutputWithContext(ctx context.Context) CustomProviderValidationArrayOutput

type CustomProviderValidationInput

type CustomProviderValidationInput interface {
	pulumi.Input

	ToCustomProviderValidationOutput() CustomProviderValidationOutput
	ToCustomProviderValidationOutputWithContext(context.Context) CustomProviderValidationOutput
}

CustomProviderValidationInput is an input type that accepts CustomProviderValidationArgs and CustomProviderValidationOutput values. You can construct a concrete instance of `CustomProviderValidationInput` via:

CustomProviderValidationArgs{...}

type CustomProviderValidationOutput

type CustomProviderValidationOutput struct{ *pulumi.OutputState }

func (CustomProviderValidationOutput) ElementType

func (CustomProviderValidationOutput) Specification

The endpoint where the validation specification is located.

func (CustomProviderValidationOutput) ToCustomProviderValidationOutput

func (o CustomProviderValidationOutput) ToCustomProviderValidationOutput() CustomProviderValidationOutput

func (CustomProviderValidationOutput) ToCustomProviderValidationOutputWithContext

func (o CustomProviderValidationOutput) ToCustomProviderValidationOutputWithContext(ctx context.Context) CustomProviderValidationOutput

type GetClientConfigResult

type GetClientConfigResult struct {
	ClientId string `pulumi:"clientId"`
	// The provider-assigned unique ID for this managed resource.
	Id             string `pulumi:"id"`
	ObjectId       string `pulumi:"objectId"`
	SubscriptionId string `pulumi:"subscriptionId"`
	TenantId       string `pulumi:"tenantId"`
}

A collection of values returned by getClientConfig.

func GetClientConfig

func GetClientConfig(ctx *pulumi.Context, opts ...pulumi.InvokeOption) (*GetClientConfigResult, error)

Use this data source to access the configuration of the AzureRM provider.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("accountId", current.ClientId)
		return nil
	})
}

```

type GetResourcesArgs

type GetResourcesArgs struct {
	// The name of the Resource.
	Name *string `pulumi:"name"`
	// A mapping of tags which the resource has to have in order to be included in the result.
	RequiredTags map[string]string `pulumi:"requiredTags"`
	// The name of the Resource group where the Resources are located.
	ResourceGroupName *string `pulumi:"resourceGroupName"`
	// The Resource Type of the Resources you want to list (e.g. `Microsoft.Network/virtualNetworks`). A full list of available Resource Types can be found [here](https://docs.microsoft.com/en-us/azure/azure-resource-manager/azure-services-resource-providers).
	Type *string `pulumi:"type"`
}

A collection of arguments for invoking getResources.

type GetResourcesResource

type GetResourcesResource struct {
	// The ID of this Resource.
	Id string `pulumi:"id"`
	// The Azure Region in which this Resource exists.
	Location string `pulumi:"location"`
	// The name of the Resource.
	Name string `pulumi:"name"`
	// A map of tags assigned to this Resource.
	Tags map[string]string `pulumi:"tags"`
	// The Resource Type of the Resources you want to list (e.g. `Microsoft.Network/virtualNetworks`). A full list of available Resource Types can be found [here](https://docs.microsoft.com/en-us/azure/azure-resource-manager/azure-services-resource-providers).
	Type string `pulumi:"type"`
}

type GetResourcesResourceArgs

type GetResourcesResourceArgs struct {
	// The ID of this Resource.
	Id pulumi.StringInput `pulumi:"id"`
	// The Azure Region in which this Resource exists.
	Location pulumi.StringInput `pulumi:"location"`
	// The name of the Resource.
	Name pulumi.StringInput `pulumi:"name"`
	// A map of tags assigned to this Resource.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// The Resource Type of the Resources you want to list (e.g. `Microsoft.Network/virtualNetworks`). A full list of available Resource Types can be found [here](https://docs.microsoft.com/en-us/azure/azure-resource-manager/azure-services-resource-providers).
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetResourcesResourceArgs) ElementType

func (GetResourcesResourceArgs) ElementType() reflect.Type

func (GetResourcesResourceArgs) ToGetResourcesResourceOutput

func (i GetResourcesResourceArgs) ToGetResourcesResourceOutput() GetResourcesResourceOutput

func (GetResourcesResourceArgs) ToGetResourcesResourceOutputWithContext

func (i GetResourcesResourceArgs) ToGetResourcesResourceOutputWithContext(ctx context.Context) GetResourcesResourceOutput

type GetResourcesResourceArray

type GetResourcesResourceArray []GetResourcesResourceInput

func (GetResourcesResourceArray) ElementType

func (GetResourcesResourceArray) ElementType() reflect.Type

func (GetResourcesResourceArray) ToGetResourcesResourceArrayOutput

func (i GetResourcesResourceArray) ToGetResourcesResourceArrayOutput() GetResourcesResourceArrayOutput

func (GetResourcesResourceArray) ToGetResourcesResourceArrayOutputWithContext

func (i GetResourcesResourceArray) ToGetResourcesResourceArrayOutputWithContext(ctx context.Context) GetResourcesResourceArrayOutput

type GetResourcesResourceArrayInput

type GetResourcesResourceArrayInput interface {
	pulumi.Input

	ToGetResourcesResourceArrayOutput() GetResourcesResourceArrayOutput
	ToGetResourcesResourceArrayOutputWithContext(context.Context) GetResourcesResourceArrayOutput
}

GetResourcesResourceArrayInput is an input type that accepts GetResourcesResourceArray and GetResourcesResourceArrayOutput values. You can construct a concrete instance of `GetResourcesResourceArrayInput` via:

GetResourcesResourceArray{ GetResourcesResourceArgs{...} }

type GetResourcesResourceArrayOutput

type GetResourcesResourceArrayOutput struct{ *pulumi.OutputState }

func (GetResourcesResourceArrayOutput) ElementType

func (GetResourcesResourceArrayOutput) Index

func (GetResourcesResourceArrayOutput) ToGetResourcesResourceArrayOutput

func (o GetResourcesResourceArrayOutput) ToGetResourcesResourceArrayOutput() GetResourcesResourceArrayOutput

func (GetResourcesResourceArrayOutput) ToGetResourcesResourceArrayOutputWithContext

func (o GetResourcesResourceArrayOutput) ToGetResourcesResourceArrayOutputWithContext(ctx context.Context) GetResourcesResourceArrayOutput

type GetResourcesResourceInput

type GetResourcesResourceInput interface {
	pulumi.Input

	ToGetResourcesResourceOutput() GetResourcesResourceOutput
	ToGetResourcesResourceOutputWithContext(context.Context) GetResourcesResourceOutput
}

GetResourcesResourceInput is an input type that accepts GetResourcesResourceArgs and GetResourcesResourceOutput values. You can construct a concrete instance of `GetResourcesResourceInput` via:

GetResourcesResourceArgs{...}

type GetResourcesResourceOutput

type GetResourcesResourceOutput struct{ *pulumi.OutputState }

func (GetResourcesResourceOutput) ElementType

func (GetResourcesResourceOutput) ElementType() reflect.Type

func (GetResourcesResourceOutput) Id

The ID of this Resource.

func (GetResourcesResourceOutput) Location

The Azure Region in which this Resource exists.

func (GetResourcesResourceOutput) Name

The name of the Resource.

func (GetResourcesResourceOutput) Tags

A map of tags assigned to this Resource.

func (GetResourcesResourceOutput) ToGetResourcesResourceOutput

func (o GetResourcesResourceOutput) ToGetResourcesResourceOutput() GetResourcesResourceOutput

func (GetResourcesResourceOutput) ToGetResourcesResourceOutputWithContext

func (o GetResourcesResourceOutput) ToGetResourcesResourceOutputWithContext(ctx context.Context) GetResourcesResourceOutput

func (GetResourcesResourceOutput) Type

The Resource Type of the Resources you want to list (e.g. `Microsoft.Network/virtualNetworks`). A full list of available Resource Types can be found [here](https://docs.microsoft.com/en-us/azure/azure-resource-manager/azure-services-resource-providers).

type GetResourcesResult

type GetResourcesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The name of this Resource.
	Name              string            `pulumi:"name"`
	RequiredTags      map[string]string `pulumi:"requiredTags"`
	ResourceGroupName string            `pulumi:"resourceGroupName"`
	// One or more `resource` blocks as defined below.
	Resources []GetResourcesResource `pulumi:"resources"`
	// The type of this Resource. (e.g. `Microsoft.Network/virtualNetworks`).
	Type string `pulumi:"type"`
}

A collection of values returned by getResources.

func GetResources

func GetResources(ctx *pulumi.Context, args *GetResourcesArgs, opts ...pulumi.InvokeOption) (*GetResourcesResult, error)

Use this data source to access information about existing resources.

type GetSubscriptionsArgs

type GetSubscriptionsArgs struct {
	// A case-insensitive value which must be contained within the `displayName` field, used to filter the results
	DisplayNameContains *string `pulumi:"displayNameContains"`
	// A case-insensitive prefix which can be used to filter on the `displayName` field
	DisplayNamePrefix *string `pulumi:"displayNamePrefix"`
}

A collection of arguments for invoking getSubscriptions.

type GetSubscriptionsResult

type GetSubscriptionsResult struct {
	DisplayNameContains *string `pulumi:"displayNameContains"`
	DisplayNamePrefix   *string `pulumi:"displayNamePrefix"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// One or more `subscription` blocks as defined below.
	Subscriptions []GetSubscriptionsSubscription `pulumi:"subscriptions"`
}

A collection of values returned by getSubscriptions.

func GetSubscriptions

func GetSubscriptions(ctx *pulumi.Context, args *GetSubscriptionsArgs, opts ...pulumi.InvokeOption) (*GetSubscriptionsResult, error)

Use this data source to access information about all the Subscriptions currently available.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		available, err := core.GetSubscriptions(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("availableSubscriptions", available.Subscriptions)
		ctx.Export("firstAvailableSubscriptionDisplayName", available.Subscriptions[0].DisplayName)
		return nil
	})
}

```

type GetSubscriptionsSubscription

type GetSubscriptionsSubscription struct {
	// The subscription display name.
	DisplayName string `pulumi:"displayName"`
	// The ID of this subscription.
	Id string `pulumi:"id"`
	// The subscription location placement ID.
	LocationPlacementId string `pulumi:"locationPlacementId"`
	// The subscription quota ID.
	QuotaId string `pulumi:"quotaId"`
	// The subscription spending limit.
	SpendingLimit string `pulumi:"spendingLimit"`
	// The subscription state. Possible values are Enabled, Warned, PastDue, Disabled, and Deleted.
	State string `pulumi:"state"`
	// The subscription GUID.
	SubscriptionId string `pulumi:"subscriptionId"`
	// A mapping of tags assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
	// The subscription tenant ID.
	TenantId string `pulumi:"tenantId"`
}

type GetSubscriptionsSubscriptionArgs

type GetSubscriptionsSubscriptionArgs struct {
	// The subscription display name.
	DisplayName pulumi.StringInput `pulumi:"displayName"`
	// The ID of this subscription.
	Id pulumi.StringInput `pulumi:"id"`
	// The subscription location placement ID.
	LocationPlacementId pulumi.StringInput `pulumi:"locationPlacementId"`
	// The subscription quota ID.
	QuotaId pulumi.StringInput `pulumi:"quotaId"`
	// The subscription spending limit.
	SpendingLimit pulumi.StringInput `pulumi:"spendingLimit"`
	// The subscription state. Possible values are Enabled, Warned, PastDue, Disabled, and Deleted.
	State pulumi.StringInput `pulumi:"state"`
	// The subscription GUID.
	SubscriptionId pulumi.StringInput `pulumi:"subscriptionId"`
	// A mapping of tags assigned to the resource.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// The subscription tenant ID.
	TenantId pulumi.StringInput `pulumi:"tenantId"`
}

func (GetSubscriptionsSubscriptionArgs) ElementType

func (GetSubscriptionsSubscriptionArgs) ToGetSubscriptionsSubscriptionOutput

func (i GetSubscriptionsSubscriptionArgs) ToGetSubscriptionsSubscriptionOutput() GetSubscriptionsSubscriptionOutput

func (GetSubscriptionsSubscriptionArgs) ToGetSubscriptionsSubscriptionOutputWithContext

func (i GetSubscriptionsSubscriptionArgs) ToGetSubscriptionsSubscriptionOutputWithContext(ctx context.Context) GetSubscriptionsSubscriptionOutput

type GetSubscriptionsSubscriptionArray

type GetSubscriptionsSubscriptionArray []GetSubscriptionsSubscriptionInput

func (GetSubscriptionsSubscriptionArray) ElementType

func (GetSubscriptionsSubscriptionArray) ToGetSubscriptionsSubscriptionArrayOutput

func (i GetSubscriptionsSubscriptionArray) ToGetSubscriptionsSubscriptionArrayOutput() GetSubscriptionsSubscriptionArrayOutput

func (GetSubscriptionsSubscriptionArray) ToGetSubscriptionsSubscriptionArrayOutputWithContext

func (i GetSubscriptionsSubscriptionArray) ToGetSubscriptionsSubscriptionArrayOutputWithContext(ctx context.Context) GetSubscriptionsSubscriptionArrayOutput

type GetSubscriptionsSubscriptionArrayInput

type GetSubscriptionsSubscriptionArrayInput interface {
	pulumi.Input

	ToGetSubscriptionsSubscriptionArrayOutput() GetSubscriptionsSubscriptionArrayOutput
	ToGetSubscriptionsSubscriptionArrayOutputWithContext(context.Context) GetSubscriptionsSubscriptionArrayOutput
}

GetSubscriptionsSubscriptionArrayInput is an input type that accepts GetSubscriptionsSubscriptionArray and GetSubscriptionsSubscriptionArrayOutput values. You can construct a concrete instance of `GetSubscriptionsSubscriptionArrayInput` via:

GetSubscriptionsSubscriptionArray{ GetSubscriptionsSubscriptionArgs{...} }

type GetSubscriptionsSubscriptionArrayOutput

type GetSubscriptionsSubscriptionArrayOutput struct{ *pulumi.OutputState }

func (GetSubscriptionsSubscriptionArrayOutput) ElementType

func (GetSubscriptionsSubscriptionArrayOutput) Index

func (GetSubscriptionsSubscriptionArrayOutput) ToGetSubscriptionsSubscriptionArrayOutput

func (o GetSubscriptionsSubscriptionArrayOutput) ToGetSubscriptionsSubscriptionArrayOutput() GetSubscriptionsSubscriptionArrayOutput

func (GetSubscriptionsSubscriptionArrayOutput) ToGetSubscriptionsSubscriptionArrayOutputWithContext

func (o GetSubscriptionsSubscriptionArrayOutput) ToGetSubscriptionsSubscriptionArrayOutputWithContext(ctx context.Context) GetSubscriptionsSubscriptionArrayOutput

type GetSubscriptionsSubscriptionInput

type GetSubscriptionsSubscriptionInput interface {
	pulumi.Input

	ToGetSubscriptionsSubscriptionOutput() GetSubscriptionsSubscriptionOutput
	ToGetSubscriptionsSubscriptionOutputWithContext(context.Context) GetSubscriptionsSubscriptionOutput
}

GetSubscriptionsSubscriptionInput is an input type that accepts GetSubscriptionsSubscriptionArgs and GetSubscriptionsSubscriptionOutput values. You can construct a concrete instance of `GetSubscriptionsSubscriptionInput` via:

GetSubscriptionsSubscriptionArgs{...}

type GetSubscriptionsSubscriptionOutput

type GetSubscriptionsSubscriptionOutput struct{ *pulumi.OutputState }

func (GetSubscriptionsSubscriptionOutput) DisplayName

The subscription display name.

func (GetSubscriptionsSubscriptionOutput) ElementType

func (GetSubscriptionsSubscriptionOutput) Id

The ID of this subscription.

func (GetSubscriptionsSubscriptionOutput) LocationPlacementId

func (o GetSubscriptionsSubscriptionOutput) LocationPlacementId() pulumi.StringOutput

The subscription location placement ID.

func (GetSubscriptionsSubscriptionOutput) QuotaId

The subscription quota ID.

func (GetSubscriptionsSubscriptionOutput) SpendingLimit

The subscription spending limit.

func (GetSubscriptionsSubscriptionOutput) State

The subscription state. Possible values are Enabled, Warned, PastDue, Disabled, and Deleted.

func (GetSubscriptionsSubscriptionOutput) SubscriptionId

The subscription GUID.

func (GetSubscriptionsSubscriptionOutput) Tags

A mapping of tags assigned to the resource.

func (GetSubscriptionsSubscriptionOutput) TenantId

The subscription tenant ID.

func (GetSubscriptionsSubscriptionOutput) ToGetSubscriptionsSubscriptionOutput

func (o GetSubscriptionsSubscriptionOutput) ToGetSubscriptionsSubscriptionOutput() GetSubscriptionsSubscriptionOutput

func (GetSubscriptionsSubscriptionOutput) ToGetSubscriptionsSubscriptionOutputWithContext

func (o GetSubscriptionsSubscriptionOutput) ToGetSubscriptionsSubscriptionOutputWithContext(ctx context.Context) GetSubscriptionsSubscriptionOutput

type GetTemplateSpecVersionArgs

type GetTemplateSpecVersionArgs struct {
	// The name of this Template Spec.
	Name string `pulumi:"name"`
	// The name of the Resource Group where the Template Spec exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// The Version Name of the Template Spec.
	Version string `pulumi:"version"`
}

A collection of arguments for invoking getTemplateSpecVersion.

type GetTemplateSpecVersionResult

type GetTemplateSpecVersionResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id                string `pulumi:"id"`
	Name              string `pulumi:"name"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// A mapping of tags assigned to the Template.
	Tags map[string]string `pulumi:"tags"`
	// The ARM Template body of the Template Spec Version.
	TemplateBody string `pulumi:"templateBody"`
	Version      string `pulumi:"version"`
}

A collection of values returned by getTemplateSpecVersion.

func GetTemplateSpecVersion

func GetTemplateSpecVersion(ctx *pulumi.Context, args *GetTemplateSpecVersionArgs, opts ...pulumi.InvokeOption) (*GetTemplateSpecVersionResult, error)

Use this data source to access information about an existing Template Spec Version.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := core.GetTemplateSpecVersion(ctx, &core.GetTemplateSpecVersionArgs{
			Name:              "exampleTemplateSpec",
			ResourceGroupName: "MyResourceGroup",
			Version:           "v1.0.4",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("id", example.Id)
		return nil
	})
}

```

type GetUserAssignedIdentityArgs

type GetUserAssignedIdentityArgs struct {
	// The name of the User Assigned Identity.
	Name string `pulumi:"name"`
	// The name of the Resource Group in which the User Assigned Identity exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getUserAssignedIdentity.

type GetUserAssignedIdentityResult

type GetUserAssignedIdentityResult struct {
	// The Client ID of the User Assigned Identity.
	ClientId string `pulumi:"clientId"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The Azure location where the User Assigned Identity exists.
	Location string `pulumi:"location"`
	Name     string `pulumi:"name"`
	// The Service Principal ID of the User Assigned Identity.
	PrincipalId       string `pulumi:"principalId"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// A mapping of tags assigned to the User Assigned Identity.
	Tags map[string]string `pulumi:"tags"`
	// The Tenant ID of the User Assigned Identity.
	TenantId string `pulumi:"tenantId"`
}

A collection of values returned by getUserAssignedIdentity.

func GetUserAssignedIdentity deprecated

func GetUserAssignedIdentity(ctx *pulumi.Context, args *GetUserAssignedIdentityArgs, opts ...pulumi.InvokeOption) (*GetUserAssignedIdentityResult, error)

Use this data source to access information about an existing User Assigned Identity.

## Example Usage ### Reference An Existing)

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := authorization.LookupUserAssignedIdentity(ctx, &authorization.LookupUserAssignedIdentityArgs{
			Name:              "name_of_user_assigned_identity",
			ResourceGroupName: "name_of_resource_group",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("uaiClientId", example.ClientId)
		ctx.Export("uaiPrincipalId", example.PrincipalId)
		ctx.Export("uaiTenantId", example.TenantId)
		return nil
	})
}

```

Deprecated: azure.core.getUserAssignedIdentity has been deprecated in favor of azure.authorization.getUserAssignedIdentity

type LookupResourceGroupArgs

type LookupResourceGroupArgs struct {
	// The Name of this Resource Group.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getResourceGroup.

type LookupResourceGroupResult

type LookupResourceGroupResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The Azure Region where the Resource Group exists.
	Location string `pulumi:"location"`
	Name     string `pulumi:"name"`
	// A mapping of tags assigned to the Resource Group.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getResourceGroup.

func LookupResourceGroup

func LookupResourceGroup(ctx *pulumi.Context, args *LookupResourceGroupArgs, opts ...pulumi.InvokeOption) (*LookupResourceGroupResult, error)

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

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := core.LookupResourceGroup(ctx, &core.LookupResourceGroupArgs{
			Name: "existing",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("id", example.Id)
		return nil
	})
}

```

type LookupSubscriptionArgs

type LookupSubscriptionArgs struct {
	// Specifies the ID of the subscription. If this argument is omitted, the subscription ID of the current Azure Resource Manager provider is used.
	SubscriptionId *string `pulumi:"subscriptionId"`
}

A collection of arguments for invoking getSubscription.

type LookupSubscriptionResult

type LookupSubscriptionResult struct {
	// The subscription display name.
	DisplayName string `pulumi:"displayName"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The subscription location placement ID.
	LocationPlacementId string `pulumi:"locationPlacementId"`
	// The subscription quota ID.
	QuotaId string `pulumi:"quotaId"`
	// The subscription spending limit.
	SpendingLimit string `pulumi:"spendingLimit"`
	// The subscription state. Possible values are Enabled, Warned, PastDue, Disabled, and Deleted.
	State string `pulumi:"state"`
	// The subscription GUID.
	SubscriptionId string `pulumi:"subscriptionId"`
	// A mapping of tags assigned to the Subscription.
	Tags map[string]string `pulumi:"tags"`
	// The subscription tenant ID.
	TenantId string `pulumi:"tenantId"`
}

A collection of values returned by getSubscription.

func LookupSubscription

func LookupSubscription(ctx *pulumi.Context, args *LookupSubscriptionArgs, opts ...pulumi.InvokeOption) (*LookupSubscriptionResult, error)

Use this data source to access information about an existing Subscription.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"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
		}
		ctx.Export("currentSubscriptionDisplayName", current.DisplayName)
		return nil
	})
}

```

type PortalTenantConfiguration added in v4.9.0

type PortalTenantConfiguration struct {
	pulumi.CustomResourceState

	// Is the private tile markdown storage which used to display custom dynamic and static content enabled?
	PrivateMarkdownStorageEnforced pulumi.BoolOutput `pulumi:"privateMarkdownStorageEnforced"`
}

Manages Portal Tenant Configuration.

> **Note:** User has to be `Contributor` or `Owner` at scope `/` for managing this resource.

> **Note:** The Service Principal with Tenant Admin can be created by `az ad sp create-for-rbac --name "<sp name>" --role="Contributor" --scopes="/"`.

> **Note:** The Service Principal can be granted Tenant Admin permission by `az role assignment create --assignee "<app id>" --role "Contributor" --scope "/"`.

> **Note:** While assigning the role to the existing/new Service Principal at the Tenant Scope, the user assigning role must already have the `Owner` role assigned at the Tenant Scope.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := core.NewPortalTenantConfiguration(ctx, "example", &core.PortalTenantConfigurationArgs{
			PrivateMarkdownStorageEnforced: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Portal Tenant Configurations can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:core/portalTenantConfiguration:PortalTenantConfiguration example /providers/Microsoft.Portal/tenantConfigurations/default

```

func GetPortalTenantConfiguration added in v4.9.0

func GetPortalTenantConfiguration(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PortalTenantConfigurationState, opts ...pulumi.ResourceOption) (*PortalTenantConfiguration, error)

GetPortalTenantConfiguration gets an existing PortalTenantConfiguration 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 NewPortalTenantConfiguration added in v4.9.0

func NewPortalTenantConfiguration(ctx *pulumi.Context,
	name string, args *PortalTenantConfigurationArgs, opts ...pulumi.ResourceOption) (*PortalTenantConfiguration, error)

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

func (*PortalTenantConfiguration) ElementType added in v4.9.0

func (*PortalTenantConfiguration) ElementType() reflect.Type

func (*PortalTenantConfiguration) ToPortalTenantConfigurationOutput added in v4.9.0

func (i *PortalTenantConfiguration) ToPortalTenantConfigurationOutput() PortalTenantConfigurationOutput

func (*PortalTenantConfiguration) ToPortalTenantConfigurationOutputWithContext added in v4.9.0

func (i *PortalTenantConfiguration) ToPortalTenantConfigurationOutputWithContext(ctx context.Context) PortalTenantConfigurationOutput

func (*PortalTenantConfiguration) ToPortalTenantConfigurationPtrOutput added in v4.9.0

func (i *PortalTenantConfiguration) ToPortalTenantConfigurationPtrOutput() PortalTenantConfigurationPtrOutput

func (*PortalTenantConfiguration) ToPortalTenantConfigurationPtrOutputWithContext added in v4.9.0

func (i *PortalTenantConfiguration) ToPortalTenantConfigurationPtrOutputWithContext(ctx context.Context) PortalTenantConfigurationPtrOutput

type PortalTenantConfigurationArgs added in v4.9.0

type PortalTenantConfigurationArgs struct {
	// Is the private tile markdown storage which used to display custom dynamic and static content enabled?
	PrivateMarkdownStorageEnforced pulumi.BoolInput
}

The set of arguments for constructing a PortalTenantConfiguration resource.

func (PortalTenantConfigurationArgs) ElementType added in v4.9.0

type PortalTenantConfigurationArray added in v4.9.0

type PortalTenantConfigurationArray []PortalTenantConfigurationInput

func (PortalTenantConfigurationArray) ElementType added in v4.9.0

func (PortalTenantConfigurationArray) ToPortalTenantConfigurationArrayOutput added in v4.9.0

func (i PortalTenantConfigurationArray) ToPortalTenantConfigurationArrayOutput() PortalTenantConfigurationArrayOutput

func (PortalTenantConfigurationArray) ToPortalTenantConfigurationArrayOutputWithContext added in v4.9.0

func (i PortalTenantConfigurationArray) ToPortalTenantConfigurationArrayOutputWithContext(ctx context.Context) PortalTenantConfigurationArrayOutput

type PortalTenantConfigurationArrayInput added in v4.9.0

type PortalTenantConfigurationArrayInput interface {
	pulumi.Input

	ToPortalTenantConfigurationArrayOutput() PortalTenantConfigurationArrayOutput
	ToPortalTenantConfigurationArrayOutputWithContext(context.Context) PortalTenantConfigurationArrayOutput
}

PortalTenantConfigurationArrayInput is an input type that accepts PortalTenantConfigurationArray and PortalTenantConfigurationArrayOutput values. You can construct a concrete instance of `PortalTenantConfigurationArrayInput` via:

PortalTenantConfigurationArray{ PortalTenantConfigurationArgs{...} }

type PortalTenantConfigurationArrayOutput added in v4.9.0

type PortalTenantConfigurationArrayOutput struct{ *pulumi.OutputState }

func (PortalTenantConfigurationArrayOutput) ElementType added in v4.9.0

func (PortalTenantConfigurationArrayOutput) Index added in v4.9.0

func (PortalTenantConfigurationArrayOutput) ToPortalTenantConfigurationArrayOutput added in v4.9.0

func (o PortalTenantConfigurationArrayOutput) ToPortalTenantConfigurationArrayOutput() PortalTenantConfigurationArrayOutput

func (PortalTenantConfigurationArrayOutput) ToPortalTenantConfigurationArrayOutputWithContext added in v4.9.0

func (o PortalTenantConfigurationArrayOutput) ToPortalTenantConfigurationArrayOutputWithContext(ctx context.Context) PortalTenantConfigurationArrayOutput

type PortalTenantConfigurationInput added in v4.9.0

type PortalTenantConfigurationInput interface {
	pulumi.Input

	ToPortalTenantConfigurationOutput() PortalTenantConfigurationOutput
	ToPortalTenantConfigurationOutputWithContext(ctx context.Context) PortalTenantConfigurationOutput
}

type PortalTenantConfigurationMap added in v4.9.0

type PortalTenantConfigurationMap map[string]PortalTenantConfigurationInput

func (PortalTenantConfigurationMap) ElementType added in v4.9.0

func (PortalTenantConfigurationMap) ToPortalTenantConfigurationMapOutput added in v4.9.0

func (i PortalTenantConfigurationMap) ToPortalTenantConfigurationMapOutput() PortalTenantConfigurationMapOutput

func (PortalTenantConfigurationMap) ToPortalTenantConfigurationMapOutputWithContext added in v4.9.0

func (i PortalTenantConfigurationMap) ToPortalTenantConfigurationMapOutputWithContext(ctx context.Context) PortalTenantConfigurationMapOutput

type PortalTenantConfigurationMapInput added in v4.9.0

type PortalTenantConfigurationMapInput interface {
	pulumi.Input

	ToPortalTenantConfigurationMapOutput() PortalTenantConfigurationMapOutput
	ToPortalTenantConfigurationMapOutputWithContext(context.Context) PortalTenantConfigurationMapOutput
}

PortalTenantConfigurationMapInput is an input type that accepts PortalTenantConfigurationMap and PortalTenantConfigurationMapOutput values. You can construct a concrete instance of `PortalTenantConfigurationMapInput` via:

PortalTenantConfigurationMap{ "key": PortalTenantConfigurationArgs{...} }

type PortalTenantConfigurationMapOutput added in v4.9.0

type PortalTenantConfigurationMapOutput struct{ *pulumi.OutputState }

func (PortalTenantConfigurationMapOutput) ElementType added in v4.9.0

func (PortalTenantConfigurationMapOutput) MapIndex added in v4.9.0

func (PortalTenantConfigurationMapOutput) ToPortalTenantConfigurationMapOutput added in v4.9.0

func (o PortalTenantConfigurationMapOutput) ToPortalTenantConfigurationMapOutput() PortalTenantConfigurationMapOutput

func (PortalTenantConfigurationMapOutput) ToPortalTenantConfigurationMapOutputWithContext added in v4.9.0

func (o PortalTenantConfigurationMapOutput) ToPortalTenantConfigurationMapOutputWithContext(ctx context.Context) PortalTenantConfigurationMapOutput

type PortalTenantConfigurationOutput added in v4.9.0

type PortalTenantConfigurationOutput struct {
	*pulumi.OutputState
}

func (PortalTenantConfigurationOutput) ElementType added in v4.9.0

func (PortalTenantConfigurationOutput) ToPortalTenantConfigurationOutput added in v4.9.0

func (o PortalTenantConfigurationOutput) ToPortalTenantConfigurationOutput() PortalTenantConfigurationOutput

func (PortalTenantConfigurationOutput) ToPortalTenantConfigurationOutputWithContext added in v4.9.0

func (o PortalTenantConfigurationOutput) ToPortalTenantConfigurationOutputWithContext(ctx context.Context) PortalTenantConfigurationOutput

func (PortalTenantConfigurationOutput) ToPortalTenantConfigurationPtrOutput added in v4.9.0

func (o PortalTenantConfigurationOutput) ToPortalTenantConfigurationPtrOutput() PortalTenantConfigurationPtrOutput

func (PortalTenantConfigurationOutput) ToPortalTenantConfigurationPtrOutputWithContext added in v4.9.0

func (o PortalTenantConfigurationOutput) ToPortalTenantConfigurationPtrOutputWithContext(ctx context.Context) PortalTenantConfigurationPtrOutput

type PortalTenantConfigurationPtrInput added in v4.9.0

type PortalTenantConfigurationPtrInput interface {
	pulumi.Input

	ToPortalTenantConfigurationPtrOutput() PortalTenantConfigurationPtrOutput
	ToPortalTenantConfigurationPtrOutputWithContext(ctx context.Context) PortalTenantConfigurationPtrOutput
}

type PortalTenantConfigurationPtrOutput added in v4.9.0

type PortalTenantConfigurationPtrOutput struct {
	*pulumi.OutputState
}

func (PortalTenantConfigurationPtrOutput) ElementType added in v4.9.0

func (PortalTenantConfigurationPtrOutput) ToPortalTenantConfigurationPtrOutput added in v4.9.0

func (o PortalTenantConfigurationPtrOutput) ToPortalTenantConfigurationPtrOutput() PortalTenantConfigurationPtrOutput

func (PortalTenantConfigurationPtrOutput) ToPortalTenantConfigurationPtrOutputWithContext added in v4.9.0

func (o PortalTenantConfigurationPtrOutput) ToPortalTenantConfigurationPtrOutputWithContext(ctx context.Context) PortalTenantConfigurationPtrOutput

type PortalTenantConfigurationState added in v4.9.0

type PortalTenantConfigurationState struct {
	// Is the private tile markdown storage which used to display custom dynamic and static content enabled?
	PrivateMarkdownStorageEnforced pulumi.BoolPtrInput
}

func (PortalTenantConfigurationState) ElementType added in v4.9.0

type ResourceGroup

type ResourceGroup struct {
	pulumi.CustomResourceState

	// The Azure Region where the Resource Group should exist. Changing this forces a new Resource Group to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The Name which should be used for this Resource Group. Changing this forces a new Resource Group to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// A mapping of tags which should be assigned to the Resource Group.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages a Resource Group.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import azure:core/resourceGroup:ResourceGroup example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example

```

func GetResourceGroup

func GetResourceGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceGroupState, opts ...pulumi.ResourceOption) (*ResourceGroup, error)

GetResourceGroup gets an existing ResourceGroup 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 NewResourceGroup

func NewResourceGroup(ctx *pulumi.Context,
	name string, args *ResourceGroupArgs, opts ...pulumi.ResourceOption) (*ResourceGroup, error)

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

func (*ResourceGroup) ElementType

func (*ResourceGroup) ElementType() reflect.Type

func (*ResourceGroup) ToResourceGroupOutput

func (i *ResourceGroup) ToResourceGroupOutput() ResourceGroupOutput

func (*ResourceGroup) ToResourceGroupOutputWithContext

func (i *ResourceGroup) ToResourceGroupOutputWithContext(ctx context.Context) ResourceGroupOutput

func (*ResourceGroup) ToResourceGroupPtrOutput

func (i *ResourceGroup) ToResourceGroupPtrOutput() ResourceGroupPtrOutput

func (*ResourceGroup) ToResourceGroupPtrOutputWithContext

func (i *ResourceGroup) ToResourceGroupPtrOutputWithContext(ctx context.Context) ResourceGroupPtrOutput

type ResourceGroupArgs

type ResourceGroupArgs struct {
	// The Azure Region where the Resource Group should exist. Changing this forces a new Resource Group to be created.
	Location pulumi.StringPtrInput
	// The Name which should be used for this Resource Group. Changing this forces a new Resource Group to be created.
	Name pulumi.StringPtrInput
	// A mapping of tags which should be assigned to the Resource Group.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ResourceGroup resource.

func (ResourceGroupArgs) ElementType

func (ResourceGroupArgs) ElementType() reflect.Type

type ResourceGroupArray

type ResourceGroupArray []ResourceGroupInput

func (ResourceGroupArray) ElementType

func (ResourceGroupArray) ElementType() reflect.Type

func (ResourceGroupArray) ToResourceGroupArrayOutput

func (i ResourceGroupArray) ToResourceGroupArrayOutput() ResourceGroupArrayOutput

func (ResourceGroupArray) ToResourceGroupArrayOutputWithContext

func (i ResourceGroupArray) ToResourceGroupArrayOutputWithContext(ctx context.Context) ResourceGroupArrayOutput

type ResourceGroupArrayInput

type ResourceGroupArrayInput interface {
	pulumi.Input

	ToResourceGroupArrayOutput() ResourceGroupArrayOutput
	ToResourceGroupArrayOutputWithContext(context.Context) ResourceGroupArrayOutput
}

ResourceGroupArrayInput is an input type that accepts ResourceGroupArray and ResourceGroupArrayOutput values. You can construct a concrete instance of `ResourceGroupArrayInput` via:

ResourceGroupArray{ ResourceGroupArgs{...} }

type ResourceGroupArrayOutput

type ResourceGroupArrayOutput struct{ *pulumi.OutputState }

func (ResourceGroupArrayOutput) ElementType

func (ResourceGroupArrayOutput) ElementType() reflect.Type

func (ResourceGroupArrayOutput) Index

func (ResourceGroupArrayOutput) ToResourceGroupArrayOutput

func (o ResourceGroupArrayOutput) ToResourceGroupArrayOutput() ResourceGroupArrayOutput

func (ResourceGroupArrayOutput) ToResourceGroupArrayOutputWithContext

func (o ResourceGroupArrayOutput) ToResourceGroupArrayOutputWithContext(ctx context.Context) ResourceGroupArrayOutput

type ResourceGroupInput

type ResourceGroupInput interface {
	pulumi.Input

	ToResourceGroupOutput() ResourceGroupOutput
	ToResourceGroupOutputWithContext(ctx context.Context) ResourceGroupOutput
}

type ResourceGroupMap

type ResourceGroupMap map[string]ResourceGroupInput

func (ResourceGroupMap) ElementType

func (ResourceGroupMap) ElementType() reflect.Type

func (ResourceGroupMap) ToResourceGroupMapOutput

func (i ResourceGroupMap) ToResourceGroupMapOutput() ResourceGroupMapOutput

func (ResourceGroupMap) ToResourceGroupMapOutputWithContext

func (i ResourceGroupMap) ToResourceGroupMapOutputWithContext(ctx context.Context) ResourceGroupMapOutput

type ResourceGroupMapInput

type ResourceGroupMapInput interface {
	pulumi.Input

	ToResourceGroupMapOutput() ResourceGroupMapOutput
	ToResourceGroupMapOutputWithContext(context.Context) ResourceGroupMapOutput
}

ResourceGroupMapInput is an input type that accepts ResourceGroupMap and ResourceGroupMapOutput values. You can construct a concrete instance of `ResourceGroupMapInput` via:

ResourceGroupMap{ "key": ResourceGroupArgs{...} }

type ResourceGroupMapOutput

type ResourceGroupMapOutput struct{ *pulumi.OutputState }

func (ResourceGroupMapOutput) ElementType

func (ResourceGroupMapOutput) ElementType() reflect.Type

func (ResourceGroupMapOutput) MapIndex

func (ResourceGroupMapOutput) ToResourceGroupMapOutput

func (o ResourceGroupMapOutput) ToResourceGroupMapOutput() ResourceGroupMapOutput

func (ResourceGroupMapOutput) ToResourceGroupMapOutputWithContext

func (o ResourceGroupMapOutput) ToResourceGroupMapOutputWithContext(ctx context.Context) ResourceGroupMapOutput

type ResourceGroupOutput

type ResourceGroupOutput struct {
	*pulumi.OutputState
}

func (ResourceGroupOutput) ElementType

func (ResourceGroupOutput) ElementType() reflect.Type

func (ResourceGroupOutput) ToResourceGroupOutput

func (o ResourceGroupOutput) ToResourceGroupOutput() ResourceGroupOutput

func (ResourceGroupOutput) ToResourceGroupOutputWithContext

func (o ResourceGroupOutput) ToResourceGroupOutputWithContext(ctx context.Context) ResourceGroupOutput

func (ResourceGroupOutput) ToResourceGroupPtrOutput

func (o ResourceGroupOutput) ToResourceGroupPtrOutput() ResourceGroupPtrOutput

func (ResourceGroupOutput) ToResourceGroupPtrOutputWithContext

func (o ResourceGroupOutput) ToResourceGroupPtrOutputWithContext(ctx context.Context) ResourceGroupPtrOutput

type ResourceGroupPolicyAssignment added in v4.9.0

type ResourceGroupPolicyAssignment 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"`
	// A `identity` block as defined below.
	Identity ResourceGroupPolicyAssignmentIdentityPtrOutput `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"`
	// 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"`
	// 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. Changing this forces a new Management Group Policy Assignment to be created.
	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"`
	// The ID of the Resource Group where this Policy Assignment should be created. Changing this forces a new Policy Assignment to be created.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
}

Manages a Resource Group Policy Assignment.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/policy"
"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
		}
		_, err = policy.NewDefinition(ctx, "exampleDefinition", &policy.DefinitionArgs{
			PolicyType: pulumi.String("Custom"),
			Mode:       pulumi.String("All"),
			PolicyRule: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v", "	{\n", "    \"if\": {\n", "      \"not\": {\n", "        \"field\": \"location\",\n", "        \"equals\": \"westeurope\"\n", "      }\n", "    },\n", "    \"then\": {\n", "      \"effect\": \"Deny\"\n", "    }\n", "  }\n")),
		})
		if err != nil {
			return err
		}
		_, err = core.NewResourceGroupPolicyAssignment(ctx, "exampleResourceGroupPolicyAssignment", &core.ResourceGroupPolicyAssignmentArgs{
			ResourceGroupId:    exampleResourceGroup.ID(),
			PolicyDefinitionId: pulumi.Any(azurerm_policy_assignment.Example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import azure:core/resourceGroupPolicyAssignment:ResourceGroupPolicyAssignment example /subscriptions/00000000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Authorization/policyAssignments/assignment1

```

func GetResourceGroupPolicyAssignment added in v4.9.0

func GetResourceGroupPolicyAssignment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceGroupPolicyAssignmentState, opts ...pulumi.ResourceOption) (*ResourceGroupPolicyAssignment, error)

GetResourceGroupPolicyAssignment gets an existing ResourceGroupPolicyAssignment 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 NewResourceGroupPolicyAssignment added in v4.9.0

func NewResourceGroupPolicyAssignment(ctx *pulumi.Context,
	name string, args *ResourceGroupPolicyAssignmentArgs, opts ...pulumi.ResourceOption) (*ResourceGroupPolicyAssignment, error)

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

func (*ResourceGroupPolicyAssignment) ElementType added in v4.9.0

func (*ResourceGroupPolicyAssignment) ToResourceGroupPolicyAssignmentOutput added in v4.9.0

func (i *ResourceGroupPolicyAssignment) ToResourceGroupPolicyAssignmentOutput() ResourceGroupPolicyAssignmentOutput

func (*ResourceGroupPolicyAssignment) ToResourceGroupPolicyAssignmentOutputWithContext added in v4.9.0

func (i *ResourceGroupPolicyAssignment) ToResourceGroupPolicyAssignmentOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentOutput

func (*ResourceGroupPolicyAssignment) ToResourceGroupPolicyAssignmentPtrOutput added in v4.9.0

func (i *ResourceGroupPolicyAssignment) ToResourceGroupPolicyAssignmentPtrOutput() ResourceGroupPolicyAssignmentPtrOutput

func (*ResourceGroupPolicyAssignment) ToResourceGroupPolicyAssignmentPtrOutputWithContext added in v4.9.0

func (i *ResourceGroupPolicyAssignment) ToResourceGroupPolicyAssignmentPtrOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentPtrOutput

type ResourceGroupPolicyAssignmentArgs added in v4.9.0

type ResourceGroupPolicyAssignmentArgs 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
	// A `identity` block as defined below.
	Identity ResourceGroupPolicyAssignmentIdentityPtrInput
	// The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
	Location 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
	// 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. Changing this forces a new Management Group Policy Assignment to be created.
	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 ID of the Resource Group where this Policy Assignment should be created. Changing this forces a new Policy Assignment to be created.
	ResourceGroupId pulumi.StringInput
}

The set of arguments for constructing a ResourceGroupPolicyAssignment resource.

func (ResourceGroupPolicyAssignmentArgs) ElementType added in v4.9.0

type ResourceGroupPolicyAssignmentArray added in v4.9.0

type ResourceGroupPolicyAssignmentArray []ResourceGroupPolicyAssignmentInput

func (ResourceGroupPolicyAssignmentArray) ElementType added in v4.9.0

func (ResourceGroupPolicyAssignmentArray) ToResourceGroupPolicyAssignmentArrayOutput added in v4.9.0

func (i ResourceGroupPolicyAssignmentArray) ToResourceGroupPolicyAssignmentArrayOutput() ResourceGroupPolicyAssignmentArrayOutput

func (ResourceGroupPolicyAssignmentArray) ToResourceGroupPolicyAssignmentArrayOutputWithContext added in v4.9.0

func (i ResourceGroupPolicyAssignmentArray) ToResourceGroupPolicyAssignmentArrayOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentArrayOutput

type ResourceGroupPolicyAssignmentArrayInput added in v4.9.0

type ResourceGroupPolicyAssignmentArrayInput interface {
	pulumi.Input

	ToResourceGroupPolicyAssignmentArrayOutput() ResourceGroupPolicyAssignmentArrayOutput
	ToResourceGroupPolicyAssignmentArrayOutputWithContext(context.Context) ResourceGroupPolicyAssignmentArrayOutput
}

ResourceGroupPolicyAssignmentArrayInput is an input type that accepts ResourceGroupPolicyAssignmentArray and ResourceGroupPolicyAssignmentArrayOutput values. You can construct a concrete instance of `ResourceGroupPolicyAssignmentArrayInput` via:

ResourceGroupPolicyAssignmentArray{ ResourceGroupPolicyAssignmentArgs{...} }

type ResourceGroupPolicyAssignmentArrayOutput added in v4.9.0

type ResourceGroupPolicyAssignmentArrayOutput struct{ *pulumi.OutputState }

func (ResourceGroupPolicyAssignmentArrayOutput) ElementType added in v4.9.0

func (ResourceGroupPolicyAssignmentArrayOutput) Index added in v4.9.0

func (ResourceGroupPolicyAssignmentArrayOutput) ToResourceGroupPolicyAssignmentArrayOutput added in v4.9.0

func (o ResourceGroupPolicyAssignmentArrayOutput) ToResourceGroupPolicyAssignmentArrayOutput() ResourceGroupPolicyAssignmentArrayOutput

func (ResourceGroupPolicyAssignmentArrayOutput) ToResourceGroupPolicyAssignmentArrayOutputWithContext added in v4.9.0

func (o ResourceGroupPolicyAssignmentArrayOutput) ToResourceGroupPolicyAssignmentArrayOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentArrayOutput

type ResourceGroupPolicyAssignmentIdentity added in v4.9.0

type ResourceGroupPolicyAssignmentIdentity struct {
	// The Principal ID of the Policy Assignment for this Resource Group.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID of the Policy Assignment for this Resource Group.
	TenantId *string `pulumi:"tenantId"`
	// The Type of Managed Identity which should be added to this Policy Definition. The only possible value is `SystemAssigned`.
	Type *string `pulumi:"type"`
}

type ResourceGroupPolicyAssignmentIdentityArgs added in v4.9.0

type ResourceGroupPolicyAssignmentIdentityArgs struct {
	// The Principal ID of the Policy Assignment for this Resource Group.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID of the Policy Assignment for this Resource Group.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// The Type of Managed Identity which should be added to this Policy Definition. The only possible value is `SystemAssigned`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (ResourceGroupPolicyAssignmentIdentityArgs) ElementType added in v4.9.0

func (ResourceGroupPolicyAssignmentIdentityArgs) ToResourceGroupPolicyAssignmentIdentityOutput added in v4.9.0

func (i ResourceGroupPolicyAssignmentIdentityArgs) ToResourceGroupPolicyAssignmentIdentityOutput() ResourceGroupPolicyAssignmentIdentityOutput

func (ResourceGroupPolicyAssignmentIdentityArgs) ToResourceGroupPolicyAssignmentIdentityOutputWithContext added in v4.9.0

func (i ResourceGroupPolicyAssignmentIdentityArgs) ToResourceGroupPolicyAssignmentIdentityOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentIdentityOutput

func (ResourceGroupPolicyAssignmentIdentityArgs) ToResourceGroupPolicyAssignmentIdentityPtrOutput added in v4.9.0

func (i ResourceGroupPolicyAssignmentIdentityArgs) ToResourceGroupPolicyAssignmentIdentityPtrOutput() ResourceGroupPolicyAssignmentIdentityPtrOutput

func (ResourceGroupPolicyAssignmentIdentityArgs) ToResourceGroupPolicyAssignmentIdentityPtrOutputWithContext added in v4.9.0

func (i ResourceGroupPolicyAssignmentIdentityArgs) ToResourceGroupPolicyAssignmentIdentityPtrOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentIdentityPtrOutput

type ResourceGroupPolicyAssignmentIdentityInput added in v4.9.0

type ResourceGroupPolicyAssignmentIdentityInput interface {
	pulumi.Input

	ToResourceGroupPolicyAssignmentIdentityOutput() ResourceGroupPolicyAssignmentIdentityOutput
	ToResourceGroupPolicyAssignmentIdentityOutputWithContext(context.Context) ResourceGroupPolicyAssignmentIdentityOutput
}

ResourceGroupPolicyAssignmentIdentityInput is an input type that accepts ResourceGroupPolicyAssignmentIdentityArgs and ResourceGroupPolicyAssignmentIdentityOutput values. You can construct a concrete instance of `ResourceGroupPolicyAssignmentIdentityInput` via:

ResourceGroupPolicyAssignmentIdentityArgs{...}

type ResourceGroupPolicyAssignmentIdentityOutput added in v4.9.0

type ResourceGroupPolicyAssignmentIdentityOutput struct{ *pulumi.OutputState }

func (ResourceGroupPolicyAssignmentIdentityOutput) ElementType added in v4.9.0

func (ResourceGroupPolicyAssignmentIdentityOutput) PrincipalId added in v4.9.0

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

func (ResourceGroupPolicyAssignmentIdentityOutput) TenantId added in v4.9.0

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

func (ResourceGroupPolicyAssignmentIdentityOutput) ToResourceGroupPolicyAssignmentIdentityOutput added in v4.9.0

func (o ResourceGroupPolicyAssignmentIdentityOutput) ToResourceGroupPolicyAssignmentIdentityOutput() ResourceGroupPolicyAssignmentIdentityOutput

func (ResourceGroupPolicyAssignmentIdentityOutput) ToResourceGroupPolicyAssignmentIdentityOutputWithContext added in v4.9.0

func (o ResourceGroupPolicyAssignmentIdentityOutput) ToResourceGroupPolicyAssignmentIdentityOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentIdentityOutput

func (ResourceGroupPolicyAssignmentIdentityOutput) ToResourceGroupPolicyAssignmentIdentityPtrOutput added in v4.9.0

func (o ResourceGroupPolicyAssignmentIdentityOutput) ToResourceGroupPolicyAssignmentIdentityPtrOutput() ResourceGroupPolicyAssignmentIdentityPtrOutput

func (ResourceGroupPolicyAssignmentIdentityOutput) ToResourceGroupPolicyAssignmentIdentityPtrOutputWithContext added in v4.9.0

func (o ResourceGroupPolicyAssignmentIdentityOutput) ToResourceGroupPolicyAssignmentIdentityPtrOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentIdentityPtrOutput

func (ResourceGroupPolicyAssignmentIdentityOutput) Type added in v4.9.0

The Type of Managed Identity which should be added to this Policy Definition. The only possible value is `SystemAssigned`.

type ResourceGroupPolicyAssignmentIdentityPtrInput added in v4.9.0

type ResourceGroupPolicyAssignmentIdentityPtrInput interface {
	pulumi.Input

	ToResourceGroupPolicyAssignmentIdentityPtrOutput() ResourceGroupPolicyAssignmentIdentityPtrOutput
	ToResourceGroupPolicyAssignmentIdentityPtrOutputWithContext(context.Context) ResourceGroupPolicyAssignmentIdentityPtrOutput
}

ResourceGroupPolicyAssignmentIdentityPtrInput is an input type that accepts ResourceGroupPolicyAssignmentIdentityArgs, ResourceGroupPolicyAssignmentIdentityPtr and ResourceGroupPolicyAssignmentIdentityPtrOutput values. You can construct a concrete instance of `ResourceGroupPolicyAssignmentIdentityPtrInput` via:

        ResourceGroupPolicyAssignmentIdentityArgs{...}

or:

        nil

type ResourceGroupPolicyAssignmentIdentityPtrOutput added in v4.9.0

type ResourceGroupPolicyAssignmentIdentityPtrOutput struct{ *pulumi.OutputState }

func (ResourceGroupPolicyAssignmentIdentityPtrOutput) Elem added in v4.9.0

func (ResourceGroupPolicyAssignmentIdentityPtrOutput) ElementType added in v4.9.0

func (ResourceGroupPolicyAssignmentIdentityPtrOutput) PrincipalId added in v4.9.0

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

func (ResourceGroupPolicyAssignmentIdentityPtrOutput) TenantId added in v4.9.0

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

func (ResourceGroupPolicyAssignmentIdentityPtrOutput) ToResourceGroupPolicyAssignmentIdentityPtrOutput added in v4.9.0

func (o ResourceGroupPolicyAssignmentIdentityPtrOutput) ToResourceGroupPolicyAssignmentIdentityPtrOutput() ResourceGroupPolicyAssignmentIdentityPtrOutput

func (ResourceGroupPolicyAssignmentIdentityPtrOutput) ToResourceGroupPolicyAssignmentIdentityPtrOutputWithContext added in v4.9.0

func (o ResourceGroupPolicyAssignmentIdentityPtrOutput) ToResourceGroupPolicyAssignmentIdentityPtrOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentIdentityPtrOutput

func (ResourceGroupPolicyAssignmentIdentityPtrOutput) Type added in v4.9.0

The Type of Managed Identity which should be added to this Policy Definition. The only possible value is `SystemAssigned`.

type ResourceGroupPolicyAssignmentInput added in v4.9.0

type ResourceGroupPolicyAssignmentInput interface {
	pulumi.Input

	ToResourceGroupPolicyAssignmentOutput() ResourceGroupPolicyAssignmentOutput
	ToResourceGroupPolicyAssignmentOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentOutput
}

type ResourceGroupPolicyAssignmentMap added in v4.9.0

type ResourceGroupPolicyAssignmentMap map[string]ResourceGroupPolicyAssignmentInput

func (ResourceGroupPolicyAssignmentMap) ElementType added in v4.9.0

func (ResourceGroupPolicyAssignmentMap) ToResourceGroupPolicyAssignmentMapOutput added in v4.9.0

func (i ResourceGroupPolicyAssignmentMap) ToResourceGroupPolicyAssignmentMapOutput() ResourceGroupPolicyAssignmentMapOutput

func (ResourceGroupPolicyAssignmentMap) ToResourceGroupPolicyAssignmentMapOutputWithContext added in v4.9.0

func (i ResourceGroupPolicyAssignmentMap) ToResourceGroupPolicyAssignmentMapOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentMapOutput

type ResourceGroupPolicyAssignmentMapInput added in v4.9.0

type ResourceGroupPolicyAssignmentMapInput interface {
	pulumi.Input

	ToResourceGroupPolicyAssignmentMapOutput() ResourceGroupPolicyAssignmentMapOutput
	ToResourceGroupPolicyAssignmentMapOutputWithContext(context.Context) ResourceGroupPolicyAssignmentMapOutput
}

ResourceGroupPolicyAssignmentMapInput is an input type that accepts ResourceGroupPolicyAssignmentMap and ResourceGroupPolicyAssignmentMapOutput values. You can construct a concrete instance of `ResourceGroupPolicyAssignmentMapInput` via:

ResourceGroupPolicyAssignmentMap{ "key": ResourceGroupPolicyAssignmentArgs{...} }

type ResourceGroupPolicyAssignmentMapOutput added in v4.9.0

type ResourceGroupPolicyAssignmentMapOutput struct{ *pulumi.OutputState }

func (ResourceGroupPolicyAssignmentMapOutput) ElementType added in v4.9.0

func (ResourceGroupPolicyAssignmentMapOutput) MapIndex added in v4.9.0

func (ResourceGroupPolicyAssignmentMapOutput) ToResourceGroupPolicyAssignmentMapOutput added in v4.9.0

func (o ResourceGroupPolicyAssignmentMapOutput) ToResourceGroupPolicyAssignmentMapOutput() ResourceGroupPolicyAssignmentMapOutput

func (ResourceGroupPolicyAssignmentMapOutput) ToResourceGroupPolicyAssignmentMapOutputWithContext added in v4.9.0

func (o ResourceGroupPolicyAssignmentMapOutput) ToResourceGroupPolicyAssignmentMapOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentMapOutput

type ResourceGroupPolicyAssignmentOutput added in v4.9.0

type ResourceGroupPolicyAssignmentOutput struct {
	*pulumi.OutputState
}

func (ResourceGroupPolicyAssignmentOutput) ElementType added in v4.9.0

func (ResourceGroupPolicyAssignmentOutput) ToResourceGroupPolicyAssignmentOutput added in v4.9.0

func (o ResourceGroupPolicyAssignmentOutput) ToResourceGroupPolicyAssignmentOutput() ResourceGroupPolicyAssignmentOutput

func (ResourceGroupPolicyAssignmentOutput) ToResourceGroupPolicyAssignmentOutputWithContext added in v4.9.0

func (o ResourceGroupPolicyAssignmentOutput) ToResourceGroupPolicyAssignmentOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentOutput

func (ResourceGroupPolicyAssignmentOutput) ToResourceGroupPolicyAssignmentPtrOutput added in v4.9.0

func (o ResourceGroupPolicyAssignmentOutput) ToResourceGroupPolicyAssignmentPtrOutput() ResourceGroupPolicyAssignmentPtrOutput

func (ResourceGroupPolicyAssignmentOutput) ToResourceGroupPolicyAssignmentPtrOutputWithContext added in v4.9.0

func (o ResourceGroupPolicyAssignmentOutput) ToResourceGroupPolicyAssignmentPtrOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentPtrOutput

type ResourceGroupPolicyAssignmentPtrInput added in v4.9.0

type ResourceGroupPolicyAssignmentPtrInput interface {
	pulumi.Input

	ToResourceGroupPolicyAssignmentPtrOutput() ResourceGroupPolicyAssignmentPtrOutput
	ToResourceGroupPolicyAssignmentPtrOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentPtrOutput
}

type ResourceGroupPolicyAssignmentPtrOutput added in v4.9.0

type ResourceGroupPolicyAssignmentPtrOutput struct {
	*pulumi.OutputState
}

func (ResourceGroupPolicyAssignmentPtrOutput) ElementType added in v4.9.0

func (ResourceGroupPolicyAssignmentPtrOutput) ToResourceGroupPolicyAssignmentPtrOutput added in v4.9.0

func (o ResourceGroupPolicyAssignmentPtrOutput) ToResourceGroupPolicyAssignmentPtrOutput() ResourceGroupPolicyAssignmentPtrOutput

func (ResourceGroupPolicyAssignmentPtrOutput) ToResourceGroupPolicyAssignmentPtrOutputWithContext added in v4.9.0

func (o ResourceGroupPolicyAssignmentPtrOutput) ToResourceGroupPolicyAssignmentPtrOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentPtrOutput

type ResourceGroupPolicyAssignmentState added in v4.9.0

type ResourceGroupPolicyAssignmentState 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
	// A `identity` block as defined below.
	Identity ResourceGroupPolicyAssignmentIdentityPtrInput
	// The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
	Location 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
	// 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. Changing this forces a new Management Group Policy Assignment to be created.
	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
	// The ID of the Resource Group where this Policy Assignment should be created. Changing this forces a new Policy Assignment to be created.
	ResourceGroupId pulumi.StringPtrInput
}

func (ResourceGroupPolicyAssignmentState) ElementType added in v4.9.0

type ResourceGroupPtrInput

type ResourceGroupPtrInput interface {
	pulumi.Input

	ToResourceGroupPtrOutput() ResourceGroupPtrOutput
	ToResourceGroupPtrOutputWithContext(ctx context.Context) ResourceGroupPtrOutput
}

type ResourceGroupPtrOutput

type ResourceGroupPtrOutput struct {
	*pulumi.OutputState
}

func (ResourceGroupPtrOutput) ElementType

func (ResourceGroupPtrOutput) ElementType() reflect.Type

func (ResourceGroupPtrOutput) ToResourceGroupPtrOutput

func (o ResourceGroupPtrOutput) ToResourceGroupPtrOutput() ResourceGroupPtrOutput

func (ResourceGroupPtrOutput) ToResourceGroupPtrOutputWithContext

func (o ResourceGroupPtrOutput) ToResourceGroupPtrOutputWithContext(ctx context.Context) ResourceGroupPtrOutput

type ResourceGroupState

type ResourceGroupState struct {
	// The Azure Region where the Resource Group should exist. Changing this forces a new Resource Group to be created.
	Location pulumi.StringPtrInput
	// The Name which should be used for this Resource Group. Changing this forces a new Resource Group to be created.
	Name pulumi.StringPtrInput
	// A mapping of tags which should be assigned to the Resource Group.
	Tags pulumi.StringMapInput
}

func (ResourceGroupState) ElementType

func (ResourceGroupState) ElementType() reflect.Type

type ResourceGroupTemplateDeployment

type ResourceGroupTemplateDeployment 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 Deployment Mode for this Resource Group Template Deployment. Possible values are `Complete` (where resources in the Resource Group not specified in the ARM Template will be destroyed) and `Incremental` (where resources are additive only).
	DeploymentMode pulumi.StringOutput `pulumi:"deploymentMode"`
	// The name which should be used for this Resource Group Template Deployment. Changing this forces a new Resource Group 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"`
	// The name of the Resource Group where the Resource Group Template Deployment should exist. Changing this forces a new Resource Group Template Deployment to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags which should be assigned to the Resource Group Template Deployment.
	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 Resource Group Template Deployment.

> **Note:** This resource will automatically attempt to delete resources deployed by the ARM Template when it is deleted. You can opt-out of this by setting the `deleteNestedItemsDuringDeletion` field within the `templateDeployment` block of the `features` block to `false`.

## Import

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

```sh

$ pulumi import azure:core/resourceGroupTemplateDeployment:ResourceGroupTemplateDeployment example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Resources/deployments/template1

```

func GetResourceGroupTemplateDeployment

func GetResourceGroupTemplateDeployment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceGroupTemplateDeploymentState, opts ...pulumi.ResourceOption) (*ResourceGroupTemplateDeployment, error)

GetResourceGroupTemplateDeployment gets an existing ResourceGroupTemplateDeployment 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 NewResourceGroupTemplateDeployment

func NewResourceGroupTemplateDeployment(ctx *pulumi.Context,
	name string, args *ResourceGroupTemplateDeploymentArgs, opts ...pulumi.ResourceOption) (*ResourceGroupTemplateDeployment, error)

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

func (*ResourceGroupTemplateDeployment) ElementType

func (*ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentOutput

func (i *ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentOutput() ResourceGroupTemplateDeploymentOutput

func (*ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentOutputWithContext

func (i *ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentOutputWithContext(ctx context.Context) ResourceGroupTemplateDeploymentOutput

func (*ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentPtrOutput

func (i *ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentPtrOutput() ResourceGroupTemplateDeploymentPtrOutput

func (*ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentPtrOutputWithContext

func (i *ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentPtrOutputWithContext(ctx context.Context) ResourceGroupTemplateDeploymentPtrOutput

type ResourceGroupTemplateDeploymentArgs

type ResourceGroupTemplateDeploymentArgs 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 Deployment Mode for this Resource Group Template Deployment. Possible values are `Complete` (where resources in the Resource Group not specified in the ARM Template will be destroyed) and `Incremental` (where resources are additive only).
	DeploymentMode pulumi.StringInput
	// The name which should be used for this Resource Group Template Deployment. Changing this forces a new Resource Group 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
	// The name of the Resource Group where the Resource Group Template Deployment should exist. Changing this forces a new Resource Group Template Deployment to be created.
	ResourceGroupName pulumi.StringInput
	// A mapping of tags which should be assigned to the Resource Group Template Deployment.
	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 ResourceGroupTemplateDeployment resource.

func (ResourceGroupTemplateDeploymentArgs) ElementType

type ResourceGroupTemplateDeploymentArray

type ResourceGroupTemplateDeploymentArray []ResourceGroupTemplateDeploymentInput

func (ResourceGroupTemplateDeploymentArray) ElementType

func (ResourceGroupTemplateDeploymentArray) ToResourceGroupTemplateDeploymentArrayOutput

func (i ResourceGroupTemplateDeploymentArray) ToResourceGroupTemplateDeploymentArrayOutput() ResourceGroupTemplateDeploymentArrayOutput

func (ResourceGroupTemplateDeploymentArray) ToResourceGroupTemplateDeploymentArrayOutputWithContext

func (i ResourceGroupTemplateDeploymentArray) ToResourceGroupTemplateDeploymentArrayOutputWithContext(ctx context.Context) ResourceGroupTemplateDeploymentArrayOutput

type ResourceGroupTemplateDeploymentArrayInput

type ResourceGroupTemplateDeploymentArrayInput interface {
	pulumi.Input

	ToResourceGroupTemplateDeploymentArrayOutput() ResourceGroupTemplateDeploymentArrayOutput
	ToResourceGroupTemplateDeploymentArrayOutputWithContext(context.Context) ResourceGroupTemplateDeploymentArrayOutput
}

ResourceGroupTemplateDeploymentArrayInput is an input type that accepts ResourceGroupTemplateDeploymentArray and ResourceGroupTemplateDeploymentArrayOutput values. You can construct a concrete instance of `ResourceGroupTemplateDeploymentArrayInput` via:

ResourceGroupTemplateDeploymentArray{ ResourceGroupTemplateDeploymentArgs{...} }

type ResourceGroupTemplateDeploymentArrayOutput

type ResourceGroupTemplateDeploymentArrayOutput struct{ *pulumi.OutputState }

func (ResourceGroupTemplateDeploymentArrayOutput) ElementType

func (ResourceGroupTemplateDeploymentArrayOutput) Index

func (ResourceGroupTemplateDeploymentArrayOutput) ToResourceGroupTemplateDeploymentArrayOutput

func (o ResourceGroupTemplateDeploymentArrayOutput) ToResourceGroupTemplateDeploymentArrayOutput() ResourceGroupTemplateDeploymentArrayOutput

func (ResourceGroupTemplateDeploymentArrayOutput) ToResourceGroupTemplateDeploymentArrayOutputWithContext

func (o ResourceGroupTemplateDeploymentArrayOutput) ToResourceGroupTemplateDeploymentArrayOutputWithContext(ctx context.Context) ResourceGroupTemplateDeploymentArrayOutput

type ResourceGroupTemplateDeploymentInput

type ResourceGroupTemplateDeploymentInput interface {
	pulumi.Input

	ToResourceGroupTemplateDeploymentOutput() ResourceGroupTemplateDeploymentOutput
	ToResourceGroupTemplateDeploymentOutputWithContext(ctx context.Context) ResourceGroupTemplateDeploymentOutput
}

type ResourceGroupTemplateDeploymentMap

type ResourceGroupTemplateDeploymentMap map[string]ResourceGroupTemplateDeploymentInput

func (ResourceGroupTemplateDeploymentMap) ElementType

func (ResourceGroupTemplateDeploymentMap) ToResourceGroupTemplateDeploymentMapOutput

func (i ResourceGroupTemplateDeploymentMap) ToResourceGroupTemplateDeploymentMapOutput() ResourceGroupTemplateDeploymentMapOutput

func (ResourceGroupTemplateDeploymentMap) ToResourceGroupTemplateDeploymentMapOutputWithContext

func (i ResourceGroupTemplateDeploymentMap) ToResourceGroupTemplateDeploymentMapOutputWithContext(ctx context.Context) ResourceGroupTemplateDeploymentMapOutput

type ResourceGroupTemplateDeploymentMapInput

type ResourceGroupTemplateDeploymentMapInput interface {
	pulumi.Input

	ToResourceGroupTemplateDeploymentMapOutput() ResourceGroupTemplateDeploymentMapOutput
	ToResourceGroupTemplateDeploymentMapOutputWithContext(context.Context) ResourceGroupTemplateDeploymentMapOutput
}

ResourceGroupTemplateDeploymentMapInput is an input type that accepts ResourceGroupTemplateDeploymentMap and ResourceGroupTemplateDeploymentMapOutput values. You can construct a concrete instance of `ResourceGroupTemplateDeploymentMapInput` via:

ResourceGroupTemplateDeploymentMap{ "key": ResourceGroupTemplateDeploymentArgs{...} }

type ResourceGroupTemplateDeploymentMapOutput

type ResourceGroupTemplateDeploymentMapOutput struct{ *pulumi.OutputState }

func (ResourceGroupTemplateDeploymentMapOutput) ElementType

func (ResourceGroupTemplateDeploymentMapOutput) MapIndex

func (ResourceGroupTemplateDeploymentMapOutput) ToResourceGroupTemplateDeploymentMapOutput

func (o ResourceGroupTemplateDeploymentMapOutput) ToResourceGroupTemplateDeploymentMapOutput() ResourceGroupTemplateDeploymentMapOutput

func (ResourceGroupTemplateDeploymentMapOutput) ToResourceGroupTemplateDeploymentMapOutputWithContext

func (o ResourceGroupTemplateDeploymentMapOutput) ToResourceGroupTemplateDeploymentMapOutputWithContext(ctx context.Context) ResourceGroupTemplateDeploymentMapOutput

type ResourceGroupTemplateDeploymentOutput

type ResourceGroupTemplateDeploymentOutput struct {
	*pulumi.OutputState
}

func (ResourceGroupTemplateDeploymentOutput) ElementType

func (ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentOutput

func (o ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentOutput() ResourceGroupTemplateDeploymentOutput

func (ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentOutputWithContext

func (o ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentOutputWithContext(ctx context.Context) ResourceGroupTemplateDeploymentOutput

func (ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentPtrOutput

func (o ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentPtrOutput() ResourceGroupTemplateDeploymentPtrOutput

func (ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentPtrOutputWithContext

func (o ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentPtrOutputWithContext(ctx context.Context) ResourceGroupTemplateDeploymentPtrOutput

type ResourceGroupTemplateDeploymentPtrInput

type ResourceGroupTemplateDeploymentPtrInput interface {
	pulumi.Input

	ToResourceGroupTemplateDeploymentPtrOutput() ResourceGroupTemplateDeploymentPtrOutput
	ToResourceGroupTemplateDeploymentPtrOutputWithContext(ctx context.Context) ResourceGroupTemplateDeploymentPtrOutput
}

type ResourceGroupTemplateDeploymentPtrOutput

type ResourceGroupTemplateDeploymentPtrOutput struct {
	*pulumi.OutputState
}

func (ResourceGroupTemplateDeploymentPtrOutput) ElementType

func (ResourceGroupTemplateDeploymentPtrOutput) ToResourceGroupTemplateDeploymentPtrOutput

func (o ResourceGroupTemplateDeploymentPtrOutput) ToResourceGroupTemplateDeploymentPtrOutput() ResourceGroupTemplateDeploymentPtrOutput

func (ResourceGroupTemplateDeploymentPtrOutput) ToResourceGroupTemplateDeploymentPtrOutputWithContext

func (o ResourceGroupTemplateDeploymentPtrOutput) ToResourceGroupTemplateDeploymentPtrOutputWithContext(ctx context.Context) ResourceGroupTemplateDeploymentPtrOutput

type ResourceGroupTemplateDeploymentState

type ResourceGroupTemplateDeploymentState 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 Deployment Mode for this Resource Group Template Deployment. Possible values are `Complete` (where resources in the Resource Group not specified in the ARM Template will be destroyed) and `Incremental` (where resources are additive only).
	DeploymentMode pulumi.StringPtrInput
	// The name which should be used for this Resource Group Template Deployment. Changing this forces a new Resource Group 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
	// The name of the Resource Group where the Resource Group Template Deployment should exist. Changing this forces a new Resource Group Template Deployment to be created.
	ResourceGroupName pulumi.StringPtrInput
	// A mapping of tags which should be assigned to the Resource Group Template Deployment.
	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 (ResourceGroupTemplateDeploymentState) ElementType

type ResourcePolicyAssignment added in v4.9.0

type ResourcePolicyAssignment 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"`
	// A `identity` block as defined below.
	Identity ResourcePolicyAssignmentIdentityPtrOutput `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"`
	// 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 Resource Policy Assignment to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// 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. Changing this forces a new Management Group Policy Assignment to be created.
	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"`
	// The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
	ResourceId pulumi.StringOutput `pulumi:"resourceId"`
}

Manages a Policy Assignment to a Resource.

## Example Usage

```go package main

import (

"fmt"

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleVirtualNetwork, err := network.LookupVirtualNetwork(ctx, &network.LookupVirtualNetworkArgs{
			Name:              "production",
			ResourceGroupName: "networking",
		}, nil)
		if err != nil {
			return err
		}
		exampleDefinition, err := policy.NewDefinition(ctx, "exampleDefinition", &policy.DefinitionArgs{
			PolicyType: pulumi.String("Custom"),
			Mode:       pulumi.String("All"),
			PolicyRule: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v", "	{\n", "    \"if\": {\n", "      \"not\": {\n", "        \"field\": \"location\",\n", "        \"equals\": \"westeurope\"\n", "      }\n", "    },\n", "    \"then\": {\n", "      \"effect\": \"Deny\"\n", "    }\n", "  }\n")),
		})
		if err != nil {
			return err
		}
		_, err = core.NewResourcePolicyAssignment(ctx, "exampleResourcePolicyAssignment", &core.ResourcePolicyAssignmentArgs{
			ResourceId:         pulumi.String(exampleVirtualNetwork.Id),
			PolicyDefinitionId: exampleDefinition.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import azure:core/resourcePolicyAssignment:ResourcePolicyAssignment example "{resource}/providers/Microsoft.Authorization/policyAssignments/assignment1"

```

where `{resource}` is a Resource ID in the form `/subscriptions/00000000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/network1`.

func GetResourcePolicyAssignment added in v4.9.0

func GetResourcePolicyAssignment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourcePolicyAssignmentState, opts ...pulumi.ResourceOption) (*ResourcePolicyAssignment, error)

GetResourcePolicyAssignment gets an existing ResourcePolicyAssignment 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 NewResourcePolicyAssignment added in v4.9.0

func NewResourcePolicyAssignment(ctx *pulumi.Context,
	name string, args *ResourcePolicyAssignmentArgs, opts ...pulumi.ResourceOption) (*ResourcePolicyAssignment, error)

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

func (*ResourcePolicyAssignment) ElementType added in v4.9.0

func (*ResourcePolicyAssignment) ElementType() reflect.Type

func (*ResourcePolicyAssignment) ToResourcePolicyAssignmentOutput added in v4.9.0

func (i *ResourcePolicyAssignment) ToResourcePolicyAssignmentOutput() ResourcePolicyAssignmentOutput

func (*ResourcePolicyAssignment) ToResourcePolicyAssignmentOutputWithContext added in v4.9.0

func (i *ResourcePolicyAssignment) ToResourcePolicyAssignmentOutputWithContext(ctx context.Context) ResourcePolicyAssignmentOutput

func (*ResourcePolicyAssignment) ToResourcePolicyAssignmentPtrOutput added in v4.9.0

func (i *ResourcePolicyAssignment) ToResourcePolicyAssignmentPtrOutput() ResourcePolicyAssignmentPtrOutput

func (*ResourcePolicyAssignment) ToResourcePolicyAssignmentPtrOutputWithContext added in v4.9.0

func (i *ResourcePolicyAssignment) ToResourcePolicyAssignmentPtrOutputWithContext(ctx context.Context) ResourcePolicyAssignmentPtrOutput

type ResourcePolicyAssignmentArgs added in v4.9.0

type ResourcePolicyAssignmentArgs 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
	// A `identity` block as defined below.
	Identity ResourcePolicyAssignmentIdentityPtrInput
	// The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
	Location 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 Resource Policy Assignment to be created.
	Name pulumi.StringPtrInput
	// 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. Changing this forces a new Management Group Policy Assignment to be created.
	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 ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
	ResourceId pulumi.StringInput
}

The set of arguments for constructing a ResourcePolicyAssignment resource.

func (ResourcePolicyAssignmentArgs) ElementType added in v4.9.0

type ResourcePolicyAssignmentArray added in v4.9.0

type ResourcePolicyAssignmentArray []ResourcePolicyAssignmentInput

func (ResourcePolicyAssignmentArray) ElementType added in v4.9.0

func (ResourcePolicyAssignmentArray) ToResourcePolicyAssignmentArrayOutput added in v4.9.0

func (i ResourcePolicyAssignmentArray) ToResourcePolicyAssignmentArrayOutput() ResourcePolicyAssignmentArrayOutput

func (ResourcePolicyAssignmentArray) ToResourcePolicyAssignmentArrayOutputWithContext added in v4.9.0

func (i ResourcePolicyAssignmentArray) ToResourcePolicyAssignmentArrayOutputWithContext(ctx context.Context) ResourcePolicyAssignmentArrayOutput

type ResourcePolicyAssignmentArrayInput added in v4.9.0

type ResourcePolicyAssignmentArrayInput interface {
	pulumi.Input

	ToResourcePolicyAssignmentArrayOutput() ResourcePolicyAssignmentArrayOutput
	ToResourcePolicyAssignmentArrayOutputWithContext(context.Context) ResourcePolicyAssignmentArrayOutput
}

ResourcePolicyAssignmentArrayInput is an input type that accepts ResourcePolicyAssignmentArray and ResourcePolicyAssignmentArrayOutput values. You can construct a concrete instance of `ResourcePolicyAssignmentArrayInput` via:

ResourcePolicyAssignmentArray{ ResourcePolicyAssignmentArgs{...} }

type ResourcePolicyAssignmentArrayOutput added in v4.9.0

type ResourcePolicyAssignmentArrayOutput struct{ *pulumi.OutputState }

func (ResourcePolicyAssignmentArrayOutput) ElementType added in v4.9.0

func (ResourcePolicyAssignmentArrayOutput) Index added in v4.9.0

func (ResourcePolicyAssignmentArrayOutput) ToResourcePolicyAssignmentArrayOutput added in v4.9.0

func (o ResourcePolicyAssignmentArrayOutput) ToResourcePolicyAssignmentArrayOutput() ResourcePolicyAssignmentArrayOutput

func (ResourcePolicyAssignmentArrayOutput) ToResourcePolicyAssignmentArrayOutputWithContext added in v4.9.0

func (o ResourcePolicyAssignmentArrayOutput) ToResourcePolicyAssignmentArrayOutputWithContext(ctx context.Context) ResourcePolicyAssignmentArrayOutput

type ResourcePolicyAssignmentIdentity added in v4.9.0

type ResourcePolicyAssignmentIdentity struct {
	// The Principal ID of the Policy Assignment for this Resource.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID of the Policy Assignment for this Resource.
	TenantId *string `pulumi:"tenantId"`
	// The Type of Managed Identity which should be added to this Policy Definition. The only possible value is `SystemAssigned`.
	Type *string `pulumi:"type"`
}

type ResourcePolicyAssignmentIdentityArgs added in v4.9.0

type ResourcePolicyAssignmentIdentityArgs struct {
	// The Principal ID of the Policy Assignment for this Resource.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID of the Policy Assignment for this Resource.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// The Type of Managed Identity which should be added to this Policy Definition. The only possible value is `SystemAssigned`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (ResourcePolicyAssignmentIdentityArgs) ElementType added in v4.9.0

func (ResourcePolicyAssignmentIdentityArgs) ToResourcePolicyAssignmentIdentityOutput added in v4.9.0

func (i ResourcePolicyAssignmentIdentityArgs) ToResourcePolicyAssignmentIdentityOutput() ResourcePolicyAssignmentIdentityOutput

func (ResourcePolicyAssignmentIdentityArgs) ToResourcePolicyAssignmentIdentityOutputWithContext added in v4.9.0

func (i ResourcePolicyAssignmentIdentityArgs) ToResourcePolicyAssignmentIdentityOutputWithContext(ctx context.Context) ResourcePolicyAssignmentIdentityOutput

func (ResourcePolicyAssignmentIdentityArgs) ToResourcePolicyAssignmentIdentityPtrOutput added in v4.9.0

func (i ResourcePolicyAssignmentIdentityArgs) ToResourcePolicyAssignmentIdentityPtrOutput() ResourcePolicyAssignmentIdentityPtrOutput

func (ResourcePolicyAssignmentIdentityArgs) ToResourcePolicyAssignmentIdentityPtrOutputWithContext added in v4.9.0

func (i ResourcePolicyAssignmentIdentityArgs) ToResourcePolicyAssignmentIdentityPtrOutputWithContext(ctx context.Context) ResourcePolicyAssignmentIdentityPtrOutput

type ResourcePolicyAssignmentIdentityInput added in v4.9.0

type ResourcePolicyAssignmentIdentityInput interface {
	pulumi.Input

	ToResourcePolicyAssignmentIdentityOutput() ResourcePolicyAssignmentIdentityOutput
	ToResourcePolicyAssignmentIdentityOutputWithContext(context.Context) ResourcePolicyAssignmentIdentityOutput
}

ResourcePolicyAssignmentIdentityInput is an input type that accepts ResourcePolicyAssignmentIdentityArgs and ResourcePolicyAssignmentIdentityOutput values. You can construct a concrete instance of `ResourcePolicyAssignmentIdentityInput` via:

ResourcePolicyAssignmentIdentityArgs{...}

type ResourcePolicyAssignmentIdentityOutput added in v4.9.0

type ResourcePolicyAssignmentIdentityOutput struct{ *pulumi.OutputState }

func (ResourcePolicyAssignmentIdentityOutput) ElementType added in v4.9.0

func (ResourcePolicyAssignmentIdentityOutput) PrincipalId added in v4.9.0

The Principal ID of the Policy Assignment for this Resource.

func (ResourcePolicyAssignmentIdentityOutput) TenantId added in v4.9.0

The Tenant ID of the Policy Assignment for this Resource.

func (ResourcePolicyAssignmentIdentityOutput) ToResourcePolicyAssignmentIdentityOutput added in v4.9.0

func (o ResourcePolicyAssignmentIdentityOutput) ToResourcePolicyAssignmentIdentityOutput() ResourcePolicyAssignmentIdentityOutput

func (ResourcePolicyAssignmentIdentityOutput) ToResourcePolicyAssignmentIdentityOutputWithContext added in v4.9.0

func (o ResourcePolicyAssignmentIdentityOutput) ToResourcePolicyAssignmentIdentityOutputWithContext(ctx context.Context) ResourcePolicyAssignmentIdentityOutput

func (ResourcePolicyAssignmentIdentityOutput) ToResourcePolicyAssignmentIdentityPtrOutput added in v4.9.0

func (o ResourcePolicyAssignmentIdentityOutput) ToResourcePolicyAssignmentIdentityPtrOutput() ResourcePolicyAssignmentIdentityPtrOutput

func (ResourcePolicyAssignmentIdentityOutput) ToResourcePolicyAssignmentIdentityPtrOutputWithContext added in v4.9.0

func (o ResourcePolicyAssignmentIdentityOutput) ToResourcePolicyAssignmentIdentityPtrOutputWithContext(ctx context.Context) ResourcePolicyAssignmentIdentityPtrOutput

func (ResourcePolicyAssignmentIdentityOutput) Type added in v4.9.0

The Type of Managed Identity which should be added to this Policy Definition. The only possible value is `SystemAssigned`.

type ResourcePolicyAssignmentIdentityPtrInput added in v4.9.0

type ResourcePolicyAssignmentIdentityPtrInput interface {
	pulumi.Input

	ToResourcePolicyAssignmentIdentityPtrOutput() ResourcePolicyAssignmentIdentityPtrOutput
	ToResourcePolicyAssignmentIdentityPtrOutputWithContext(context.Context) ResourcePolicyAssignmentIdentityPtrOutput
}

ResourcePolicyAssignmentIdentityPtrInput is an input type that accepts ResourcePolicyAssignmentIdentityArgs, ResourcePolicyAssignmentIdentityPtr and ResourcePolicyAssignmentIdentityPtrOutput values. You can construct a concrete instance of `ResourcePolicyAssignmentIdentityPtrInput` via:

        ResourcePolicyAssignmentIdentityArgs{...}

or:

        nil

type ResourcePolicyAssignmentIdentityPtrOutput added in v4.9.0

type ResourcePolicyAssignmentIdentityPtrOutput struct{ *pulumi.OutputState }

func (ResourcePolicyAssignmentIdentityPtrOutput) Elem added in v4.9.0

func (ResourcePolicyAssignmentIdentityPtrOutput) ElementType added in v4.9.0

func (ResourcePolicyAssignmentIdentityPtrOutput) PrincipalId added in v4.9.0

The Principal ID of the Policy Assignment for this Resource.

func (ResourcePolicyAssignmentIdentityPtrOutput) TenantId added in v4.9.0

The Tenant ID of the Policy Assignment for this Resource.

func (ResourcePolicyAssignmentIdentityPtrOutput) ToResourcePolicyAssignmentIdentityPtrOutput added in v4.9.0

func (o ResourcePolicyAssignmentIdentityPtrOutput) ToResourcePolicyAssignmentIdentityPtrOutput() ResourcePolicyAssignmentIdentityPtrOutput

func (ResourcePolicyAssignmentIdentityPtrOutput) ToResourcePolicyAssignmentIdentityPtrOutputWithContext added in v4.9.0

func (o ResourcePolicyAssignmentIdentityPtrOutput) ToResourcePolicyAssignmentIdentityPtrOutputWithContext(ctx context.Context) ResourcePolicyAssignmentIdentityPtrOutput

func (ResourcePolicyAssignmentIdentityPtrOutput) Type added in v4.9.0

The Type of Managed Identity which should be added to this Policy Definition. The only possible value is `SystemAssigned`.

type ResourcePolicyAssignmentInput added in v4.9.0

type ResourcePolicyAssignmentInput interface {
	pulumi.Input

	ToResourcePolicyAssignmentOutput() ResourcePolicyAssignmentOutput
	ToResourcePolicyAssignmentOutputWithContext(ctx context.Context) ResourcePolicyAssignmentOutput
}

type ResourcePolicyAssignmentMap added in v4.9.0

type ResourcePolicyAssignmentMap map[string]ResourcePolicyAssignmentInput

func (ResourcePolicyAssignmentMap) ElementType added in v4.9.0

func (ResourcePolicyAssignmentMap) ToResourcePolicyAssignmentMapOutput added in v4.9.0

func (i ResourcePolicyAssignmentMap) ToResourcePolicyAssignmentMapOutput() ResourcePolicyAssignmentMapOutput

func (ResourcePolicyAssignmentMap) ToResourcePolicyAssignmentMapOutputWithContext added in v4.9.0

func (i ResourcePolicyAssignmentMap) ToResourcePolicyAssignmentMapOutputWithContext(ctx context.Context) ResourcePolicyAssignmentMapOutput

type ResourcePolicyAssignmentMapInput added in v4.9.0

type ResourcePolicyAssignmentMapInput interface {
	pulumi.Input

	ToResourcePolicyAssignmentMapOutput() ResourcePolicyAssignmentMapOutput
	ToResourcePolicyAssignmentMapOutputWithContext(context.Context) ResourcePolicyAssignmentMapOutput
}

ResourcePolicyAssignmentMapInput is an input type that accepts ResourcePolicyAssignmentMap and ResourcePolicyAssignmentMapOutput values. You can construct a concrete instance of `ResourcePolicyAssignmentMapInput` via:

ResourcePolicyAssignmentMap{ "key": ResourcePolicyAssignmentArgs{...} }

type ResourcePolicyAssignmentMapOutput added in v4.9.0

type ResourcePolicyAssignmentMapOutput struct{ *pulumi.OutputState }

func (ResourcePolicyAssignmentMapOutput) ElementType added in v4.9.0

func (ResourcePolicyAssignmentMapOutput) MapIndex added in v4.9.0

func (ResourcePolicyAssignmentMapOutput) ToResourcePolicyAssignmentMapOutput added in v4.9.0

func (o ResourcePolicyAssignmentMapOutput) ToResourcePolicyAssignmentMapOutput() ResourcePolicyAssignmentMapOutput

func (ResourcePolicyAssignmentMapOutput) ToResourcePolicyAssignmentMapOutputWithContext added in v4.9.0

func (o ResourcePolicyAssignmentMapOutput) ToResourcePolicyAssignmentMapOutputWithContext(ctx context.Context) ResourcePolicyAssignmentMapOutput

type ResourcePolicyAssignmentOutput added in v4.9.0

type ResourcePolicyAssignmentOutput struct {
	*pulumi.OutputState
}

func (ResourcePolicyAssignmentOutput) ElementType added in v4.9.0

func (ResourcePolicyAssignmentOutput) ToResourcePolicyAssignmentOutput added in v4.9.0

func (o ResourcePolicyAssignmentOutput) ToResourcePolicyAssignmentOutput() ResourcePolicyAssignmentOutput

func (ResourcePolicyAssignmentOutput) ToResourcePolicyAssignmentOutputWithContext added in v4.9.0

func (o ResourcePolicyAssignmentOutput) ToResourcePolicyAssignmentOutputWithContext(ctx context.Context) ResourcePolicyAssignmentOutput

func (ResourcePolicyAssignmentOutput) ToResourcePolicyAssignmentPtrOutput added in v4.9.0

func (o ResourcePolicyAssignmentOutput) ToResourcePolicyAssignmentPtrOutput() ResourcePolicyAssignmentPtrOutput

func (ResourcePolicyAssignmentOutput) ToResourcePolicyAssignmentPtrOutputWithContext added in v4.9.0

func (o ResourcePolicyAssignmentOutput) ToResourcePolicyAssignmentPtrOutputWithContext(ctx context.Context) ResourcePolicyAssignmentPtrOutput

type ResourcePolicyAssignmentPtrInput added in v4.9.0

type ResourcePolicyAssignmentPtrInput interface {
	pulumi.Input

	ToResourcePolicyAssignmentPtrOutput() ResourcePolicyAssignmentPtrOutput
	ToResourcePolicyAssignmentPtrOutputWithContext(ctx context.Context) ResourcePolicyAssignmentPtrOutput
}

type ResourcePolicyAssignmentPtrOutput added in v4.9.0

type ResourcePolicyAssignmentPtrOutput struct {
	*pulumi.OutputState
}

func (ResourcePolicyAssignmentPtrOutput) ElementType added in v4.9.0

func (ResourcePolicyAssignmentPtrOutput) ToResourcePolicyAssignmentPtrOutput added in v4.9.0

func (o ResourcePolicyAssignmentPtrOutput) ToResourcePolicyAssignmentPtrOutput() ResourcePolicyAssignmentPtrOutput

func (ResourcePolicyAssignmentPtrOutput) ToResourcePolicyAssignmentPtrOutputWithContext added in v4.9.0

func (o ResourcePolicyAssignmentPtrOutput) ToResourcePolicyAssignmentPtrOutputWithContext(ctx context.Context) ResourcePolicyAssignmentPtrOutput

type ResourcePolicyAssignmentState added in v4.9.0

type ResourcePolicyAssignmentState 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
	// A `identity` block as defined below.
	Identity ResourcePolicyAssignmentIdentityPtrInput
	// The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
	Location 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 Resource Policy Assignment to be created.
	Name pulumi.StringPtrInput
	// 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. Changing this forces a new Management Group Policy Assignment to be created.
	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
	// The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
	ResourceId pulumi.StringPtrInput
}

func (ResourcePolicyAssignmentState) ElementType added in v4.9.0

type ResourceProviderRegistration

type ResourceProviderRegistration struct {
	pulumi.CustomResourceState

	// The namespace of the Resource Provider which should be registered. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
}

Manages the registration of a Resource Provider - which allows access to the API's supported by this Resource Provider.

> The Azure Provider will automatically register all of the Resource Providers which it supports on launch (unless opted-out using the `skipProviderRegistration` field within the provider block).

!> **Note:** The errors returned from the Azure API when a Resource Provider is unregistered are unclear (example `API version '2019-01-01' was not found for 'Microsoft.Foo'`) - please ensure that all of the necessary Resource Providers you're using are registered - if in doubt **we strongly recommend letting the provider register these for you**.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := core.NewResourceProviderRegistration(ctx, "example", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Resource Provider Registrations can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:core/resourceProviderRegistration:ResourceProviderRegistration example /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.PolicyInsights

```

func GetResourceProviderRegistration

func GetResourceProviderRegistration(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceProviderRegistrationState, opts ...pulumi.ResourceOption) (*ResourceProviderRegistration, error)

GetResourceProviderRegistration gets an existing ResourceProviderRegistration 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 NewResourceProviderRegistration

func NewResourceProviderRegistration(ctx *pulumi.Context,
	name string, args *ResourceProviderRegistrationArgs, opts ...pulumi.ResourceOption) (*ResourceProviderRegistration, error)

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

func (*ResourceProviderRegistration) ElementType

func (*ResourceProviderRegistration) ElementType() reflect.Type

func (*ResourceProviderRegistration) ToResourceProviderRegistrationOutput

func (i *ResourceProviderRegistration) ToResourceProviderRegistrationOutput() ResourceProviderRegistrationOutput

func (*ResourceProviderRegistration) ToResourceProviderRegistrationOutputWithContext

func (i *ResourceProviderRegistration) ToResourceProviderRegistrationOutputWithContext(ctx context.Context) ResourceProviderRegistrationOutput

func (*ResourceProviderRegistration) ToResourceProviderRegistrationPtrOutput

func (i *ResourceProviderRegistration) ToResourceProviderRegistrationPtrOutput() ResourceProviderRegistrationPtrOutput

func (*ResourceProviderRegistration) ToResourceProviderRegistrationPtrOutputWithContext

func (i *ResourceProviderRegistration) ToResourceProviderRegistrationPtrOutputWithContext(ctx context.Context) ResourceProviderRegistrationPtrOutput

type ResourceProviderRegistrationArgs

type ResourceProviderRegistrationArgs struct {
	// The namespace of the Resource Provider which should be registered. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a ResourceProviderRegistration resource.

func (ResourceProviderRegistrationArgs) ElementType

type ResourceProviderRegistrationArray

type ResourceProviderRegistrationArray []ResourceProviderRegistrationInput

func (ResourceProviderRegistrationArray) ElementType

func (ResourceProviderRegistrationArray) ToResourceProviderRegistrationArrayOutput

func (i ResourceProviderRegistrationArray) ToResourceProviderRegistrationArrayOutput() ResourceProviderRegistrationArrayOutput

func (ResourceProviderRegistrationArray) ToResourceProviderRegistrationArrayOutputWithContext

func (i ResourceProviderRegistrationArray) ToResourceProviderRegistrationArrayOutputWithContext(ctx context.Context) ResourceProviderRegistrationArrayOutput

type ResourceProviderRegistrationArrayInput

type ResourceProviderRegistrationArrayInput interface {
	pulumi.Input

	ToResourceProviderRegistrationArrayOutput() ResourceProviderRegistrationArrayOutput
	ToResourceProviderRegistrationArrayOutputWithContext(context.Context) ResourceProviderRegistrationArrayOutput
}

ResourceProviderRegistrationArrayInput is an input type that accepts ResourceProviderRegistrationArray and ResourceProviderRegistrationArrayOutput values. You can construct a concrete instance of `ResourceProviderRegistrationArrayInput` via:

ResourceProviderRegistrationArray{ ResourceProviderRegistrationArgs{...} }

type ResourceProviderRegistrationArrayOutput

type ResourceProviderRegistrationArrayOutput struct{ *pulumi.OutputState }

func (ResourceProviderRegistrationArrayOutput) ElementType

func (ResourceProviderRegistrationArrayOutput) Index

func (ResourceProviderRegistrationArrayOutput) ToResourceProviderRegistrationArrayOutput

func (o ResourceProviderRegistrationArrayOutput) ToResourceProviderRegistrationArrayOutput() ResourceProviderRegistrationArrayOutput

func (ResourceProviderRegistrationArrayOutput) ToResourceProviderRegistrationArrayOutputWithContext

func (o ResourceProviderRegistrationArrayOutput) ToResourceProviderRegistrationArrayOutputWithContext(ctx context.Context) ResourceProviderRegistrationArrayOutput

type ResourceProviderRegistrationInput

type ResourceProviderRegistrationInput interface {
	pulumi.Input

	ToResourceProviderRegistrationOutput() ResourceProviderRegistrationOutput
	ToResourceProviderRegistrationOutputWithContext(ctx context.Context) ResourceProviderRegistrationOutput
}

type ResourceProviderRegistrationMap

type ResourceProviderRegistrationMap map[string]ResourceProviderRegistrationInput

func (ResourceProviderRegistrationMap) ElementType

func (ResourceProviderRegistrationMap) ToResourceProviderRegistrationMapOutput

func (i ResourceProviderRegistrationMap) ToResourceProviderRegistrationMapOutput() ResourceProviderRegistrationMapOutput

func (ResourceProviderRegistrationMap) ToResourceProviderRegistrationMapOutputWithContext

func (i ResourceProviderRegistrationMap) ToResourceProviderRegistrationMapOutputWithContext(ctx context.Context) ResourceProviderRegistrationMapOutput

type ResourceProviderRegistrationMapInput

type ResourceProviderRegistrationMapInput interface {
	pulumi.Input

	ToResourceProviderRegistrationMapOutput() ResourceProviderRegistrationMapOutput
	ToResourceProviderRegistrationMapOutputWithContext(context.Context) ResourceProviderRegistrationMapOutput
}

ResourceProviderRegistrationMapInput is an input type that accepts ResourceProviderRegistrationMap and ResourceProviderRegistrationMapOutput values. You can construct a concrete instance of `ResourceProviderRegistrationMapInput` via:

ResourceProviderRegistrationMap{ "key": ResourceProviderRegistrationArgs{...} }

type ResourceProviderRegistrationMapOutput

type ResourceProviderRegistrationMapOutput struct{ *pulumi.OutputState }

func (ResourceProviderRegistrationMapOutput) ElementType

func (ResourceProviderRegistrationMapOutput) MapIndex

func (ResourceProviderRegistrationMapOutput) ToResourceProviderRegistrationMapOutput

func (o ResourceProviderRegistrationMapOutput) ToResourceProviderRegistrationMapOutput() ResourceProviderRegistrationMapOutput

func (ResourceProviderRegistrationMapOutput) ToResourceProviderRegistrationMapOutputWithContext

func (o ResourceProviderRegistrationMapOutput) ToResourceProviderRegistrationMapOutputWithContext(ctx context.Context) ResourceProviderRegistrationMapOutput

type ResourceProviderRegistrationOutput

type ResourceProviderRegistrationOutput struct {
	*pulumi.OutputState
}

func (ResourceProviderRegistrationOutput) ElementType

func (ResourceProviderRegistrationOutput) ToResourceProviderRegistrationOutput

func (o ResourceProviderRegistrationOutput) ToResourceProviderRegistrationOutput() ResourceProviderRegistrationOutput

func (ResourceProviderRegistrationOutput) ToResourceProviderRegistrationOutputWithContext

func (o ResourceProviderRegistrationOutput) ToResourceProviderRegistrationOutputWithContext(ctx context.Context) ResourceProviderRegistrationOutput

func (ResourceProviderRegistrationOutput) ToResourceProviderRegistrationPtrOutput

func (o ResourceProviderRegistrationOutput) ToResourceProviderRegistrationPtrOutput() ResourceProviderRegistrationPtrOutput

func (ResourceProviderRegistrationOutput) ToResourceProviderRegistrationPtrOutputWithContext

func (o ResourceProviderRegistrationOutput) ToResourceProviderRegistrationPtrOutputWithContext(ctx context.Context) ResourceProviderRegistrationPtrOutput

type ResourceProviderRegistrationPtrInput

type ResourceProviderRegistrationPtrInput interface {
	pulumi.Input

	ToResourceProviderRegistrationPtrOutput() ResourceProviderRegistrationPtrOutput
	ToResourceProviderRegistrationPtrOutputWithContext(ctx context.Context) ResourceProviderRegistrationPtrOutput
}

type ResourceProviderRegistrationPtrOutput

type ResourceProviderRegistrationPtrOutput struct {
	*pulumi.OutputState
}

func (ResourceProviderRegistrationPtrOutput) ElementType

func (ResourceProviderRegistrationPtrOutput) ToResourceProviderRegistrationPtrOutput

func (o ResourceProviderRegistrationPtrOutput) ToResourceProviderRegistrationPtrOutput() ResourceProviderRegistrationPtrOutput

func (ResourceProviderRegistrationPtrOutput) ToResourceProviderRegistrationPtrOutputWithContext

func (o ResourceProviderRegistrationPtrOutput) ToResourceProviderRegistrationPtrOutputWithContext(ctx context.Context) ResourceProviderRegistrationPtrOutput

type ResourceProviderRegistrationState

type ResourceProviderRegistrationState struct {
	// The namespace of the Resource Provider which should be registered. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
}

func (ResourceProviderRegistrationState) ElementType

type Subscription

type Subscription struct {
	pulumi.CustomResourceState

	// The Alias name for the subscription. This provider will generate a new GUID if this is not supplied. Changing this forces a new Subscription to be created.
	Alias pulumi.StringOutput `pulumi:"alias"`
	// The Azure Billing Scope ID. Can be either a Microsoft Customer Account Billing Scope ID or an Enrollment Billing Scope ID.
	BillingScopeId pulumi.StringPtrOutput `pulumi:"billingScopeId"`
	// The ID of the Subscription. Changing this forces a new Subscription to be created.
	SubscriptionId pulumi.StringOutput `pulumi:"subscriptionId"`
	// The Name of the Subscription. This is the Display Name in the portal.
	SubscriptionName pulumi.StringOutput    `pulumi:"subscriptionName"`
	Tags             pulumi.StringMapOutput `pulumi:"tags"`
	// The ID of the Tenant to which the subscription belongs.
	TenantId pulumi.StringOutput `pulumi:"tenantId"`
	// The workload type of the Subscription.  Possible values are `Production` (default) and `DevTest`. Changing this forces a new Subscription to be created.
	Workload pulumi.StringPtrOutput `pulumi:"workload"`
}

Manages an Alias for a Subscription - which adds an Alias to an existing Subscription, allowing it to be managed in the provider - or create a new Subscription with a new Alias.

> **NOTE:** Destroying a Subscription controlled by this resource will place the Subscription into a cancelled state. It is possible to re-activate a subscription within 90-days of cancellation, after which time the Subscription is irrevocably deleted, and the Subscription ID cannot be re-used. For further information see [here](https://docs.microsoft.com/en-us/azure/cost-management-billing/manage/cancel-azure-subscription#what-happens-after-subscription-cancellation). Users can optionally delete a Subscription once 72 hours have passed, however, this functionality is not suitable for this provider. A `Deleted` subscription cannot be reactivated.

> **NOTE:** It is not possible to destroy (cancel) a subscription if it contains resources. If resources are present that are not managed by the provider then these will need to be removed before the Subscription can be destroyed.

> **NOTE:** Azure supports Multiple Aliases per Subscription, however, to reliably manage this resource in this provider only a single Alias is supported.

## Example Usage ### Creating A New Alias And Subscription For An Enrollment Account

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleEnrollmentAccountScope, err := billing.GetEnrollmentAccountScope(ctx, &billing.GetEnrollmentAccountScopeArgs{
			BillingAccountName:    "1234567890",
			EnrollmentAccountName: "0123456",
		}, nil)
		if err != nil {
			return err
		}
		_, err = core.NewSubscription(ctx, "exampleSubscription", &core.SubscriptionArgs{
			SubscriptionName: pulumi.String("My Example EA Subscription"),
			BillingScopeId:   pulumi.String(exampleEnrollmentAccountScope.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Creating A New Alias And Subscription For A Microsoft Customer Account

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleMcaAccountScope, err := billing.GetMcaAccountScope(ctx, &billing.GetMcaAccountScopeArgs{
			BillingAccountName: "e879cf0f-2b4d-5431-109a-f72fc9868693:024cabf4-7321-4cf9-be59-df0c77ca51de_2019-05-31",
			BillingProfileName: "PE2Q-NOIT-BG7-TGB",
			InvoiceSectionName: "MTT4-OBS7-PJA-TGB",
		}, nil)
		if err != nil {
			return err
		}
		_, err = core.NewSubscription(ctx, "exampleSubscription", &core.SubscriptionArgs{
			SubscriptionName: pulumi.String("My Example MCA Subscription"),
			BillingScopeId:   pulumi.String(exampleMcaAccountScope.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Adding An Alias To An Existing Subscription

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := core.NewSubscription(ctx, "example", &core.SubscriptionArgs{
			Alias:            pulumi.String("examplesub"),
			SubscriptionId:   pulumi.String("12345678-12234-5678-9012-123456789012"),
			SubscriptionName: pulumi.String("My Example Subscription"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import azure:core/subscription:Subscription example "/providers/Microsoft.Subscription/aliases/subscription1"

```

In this scenario, the `subscription_id` property can be completed and this provider will assume control of the existing subscription by creating an Alias. See the `adding an Alias to an existing Subscription` above. This provider requires an alias to correctly manage Subscription resources due to Azure Subscription API design.

func GetSubscription

func GetSubscription(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SubscriptionState, opts ...pulumi.ResourceOption) (*Subscription, error)

GetSubscription gets an existing Subscription 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 NewSubscription

func NewSubscription(ctx *pulumi.Context,
	name string, args *SubscriptionArgs, opts ...pulumi.ResourceOption) (*Subscription, error)

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

func (*Subscription) ElementType

func (*Subscription) ElementType() reflect.Type

func (*Subscription) ToSubscriptionOutput

func (i *Subscription) ToSubscriptionOutput() SubscriptionOutput

func (*Subscription) ToSubscriptionOutputWithContext

func (i *Subscription) ToSubscriptionOutputWithContext(ctx context.Context) SubscriptionOutput

func (*Subscription) ToSubscriptionPtrOutput

func (i *Subscription) ToSubscriptionPtrOutput() SubscriptionPtrOutput

func (*Subscription) ToSubscriptionPtrOutputWithContext

func (i *Subscription) ToSubscriptionPtrOutputWithContext(ctx context.Context) SubscriptionPtrOutput

type SubscriptionArgs

type SubscriptionArgs struct {
	// The Alias name for the subscription. This provider will generate a new GUID if this is not supplied. Changing this forces a new Subscription to be created.
	Alias pulumi.StringPtrInput
	// The Azure Billing Scope ID. Can be either a Microsoft Customer Account Billing Scope ID or an Enrollment Billing Scope ID.
	BillingScopeId pulumi.StringPtrInput
	// The ID of the Subscription. Changing this forces a new Subscription to be created.
	SubscriptionId pulumi.StringPtrInput
	// The Name of the Subscription. This is the Display Name in the portal.
	SubscriptionName pulumi.StringInput
	// The workload type of the Subscription.  Possible values are `Production` (default) and `DevTest`. Changing this forces a new Subscription to be created.
	Workload pulumi.StringPtrInput
}

The set of arguments for constructing a Subscription resource.

func (SubscriptionArgs) ElementType

func (SubscriptionArgs) ElementType() reflect.Type

type SubscriptionArray

type SubscriptionArray []SubscriptionInput

func (SubscriptionArray) ElementType

func (SubscriptionArray) ElementType() reflect.Type

func (SubscriptionArray) ToSubscriptionArrayOutput

func (i SubscriptionArray) ToSubscriptionArrayOutput() SubscriptionArrayOutput

func (SubscriptionArray) ToSubscriptionArrayOutputWithContext

func (i SubscriptionArray) ToSubscriptionArrayOutputWithContext(ctx context.Context) SubscriptionArrayOutput

type SubscriptionArrayInput

type SubscriptionArrayInput interface {
	pulumi.Input

	ToSubscriptionArrayOutput() SubscriptionArrayOutput
	ToSubscriptionArrayOutputWithContext(context.Context) SubscriptionArrayOutput
}

SubscriptionArrayInput is an input type that accepts SubscriptionArray and SubscriptionArrayOutput values. You can construct a concrete instance of `SubscriptionArrayInput` via:

SubscriptionArray{ SubscriptionArgs{...} }

type SubscriptionArrayOutput

type SubscriptionArrayOutput struct{ *pulumi.OutputState }

func (SubscriptionArrayOutput) ElementType

func (SubscriptionArrayOutput) ElementType() reflect.Type

func (SubscriptionArrayOutput) Index

func (SubscriptionArrayOutput) ToSubscriptionArrayOutput

func (o SubscriptionArrayOutput) ToSubscriptionArrayOutput() SubscriptionArrayOutput

func (SubscriptionArrayOutput) ToSubscriptionArrayOutputWithContext

func (o SubscriptionArrayOutput) ToSubscriptionArrayOutputWithContext(ctx context.Context) SubscriptionArrayOutput

type SubscriptionInput

type SubscriptionInput interface {
	pulumi.Input

	ToSubscriptionOutput() SubscriptionOutput
	ToSubscriptionOutputWithContext(ctx context.Context) SubscriptionOutput
}

type SubscriptionMap

type SubscriptionMap map[string]SubscriptionInput

func (SubscriptionMap) ElementType

func (SubscriptionMap) ElementType() reflect.Type

func (SubscriptionMap) ToSubscriptionMapOutput

func (i SubscriptionMap) ToSubscriptionMapOutput() SubscriptionMapOutput

func (SubscriptionMap) ToSubscriptionMapOutputWithContext

func (i SubscriptionMap) ToSubscriptionMapOutputWithContext(ctx context.Context) SubscriptionMapOutput

type SubscriptionMapInput

type SubscriptionMapInput interface {
	pulumi.Input

	ToSubscriptionMapOutput() SubscriptionMapOutput
	ToSubscriptionMapOutputWithContext(context.Context) SubscriptionMapOutput
}

SubscriptionMapInput is an input type that accepts SubscriptionMap and SubscriptionMapOutput values. You can construct a concrete instance of `SubscriptionMapInput` via:

SubscriptionMap{ "key": SubscriptionArgs{...} }

type SubscriptionMapOutput

type SubscriptionMapOutput struct{ *pulumi.OutputState }

func (SubscriptionMapOutput) ElementType

func (SubscriptionMapOutput) ElementType() reflect.Type

func (SubscriptionMapOutput) MapIndex

func (SubscriptionMapOutput) ToSubscriptionMapOutput

func (o SubscriptionMapOutput) ToSubscriptionMapOutput() SubscriptionMapOutput

func (SubscriptionMapOutput) ToSubscriptionMapOutputWithContext

func (o SubscriptionMapOutput) ToSubscriptionMapOutputWithContext(ctx context.Context) SubscriptionMapOutput

type SubscriptionOutput

type SubscriptionOutput struct {
	*pulumi.OutputState
}

func (SubscriptionOutput) ElementType

func (SubscriptionOutput) ElementType() reflect.Type

func (SubscriptionOutput) ToSubscriptionOutput

func (o SubscriptionOutput) ToSubscriptionOutput() SubscriptionOutput

func (SubscriptionOutput) ToSubscriptionOutputWithContext

func (o SubscriptionOutput) ToSubscriptionOutputWithContext(ctx context.Context) SubscriptionOutput

func (SubscriptionOutput) ToSubscriptionPtrOutput

func (o SubscriptionOutput) ToSubscriptionPtrOutput() SubscriptionPtrOutput

func (SubscriptionOutput) ToSubscriptionPtrOutputWithContext

func (o SubscriptionOutput) ToSubscriptionPtrOutputWithContext(ctx context.Context) SubscriptionPtrOutput

type SubscriptionPolicyAssignment added in v4.9.0

type SubscriptionPolicyAssignment 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"`
	// A `identity` block as defined below.
	Identity SubscriptionPolicyAssignmentIdentityPtrOutput `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"`
	// 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"`
	// 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. Changing this forces a new Management Group Policy Assignment to be created.
	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"`
	// The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new Policy Assignment to be created.
	SubscriptionId pulumi.StringOutput `pulumi:"subscriptionId"`
}

Manages a Subscription Policy Assignment.

## Example Usage

```go package main

import (

"fmt"

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := core.LookupSubscription(ctx, nil, nil)
		if err != nil {
			return err
		}
		exampleDefinition, err := policy.NewDefinition(ctx, "exampleDefinition", &policy.DefinitionArgs{
			PolicyType: pulumi.String("Custom"),
			Mode:       pulumi.String("All"),
			PolicyRule: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v", "	{\n", "    \"if\": {\n", "      \"not\": {\n", "        \"field\": \"location\",\n", "        \"equals\": \"westeurope\"\n", "      }\n", "    },\n", "    \"then\": {\n", "      \"effect\": \"Deny\"\n", "    }\n", "  }\n")),
		})
		if err != nil {
			return err
		}
		_, err = core.NewSubscriptionPolicyAssignment(ctx, "exampleSubscriptionPolicyAssignment", &core.SubscriptionPolicyAssignmentArgs{
			PolicyDefinitionId: exampleDefinition.ID(),
			SubscriptionId:     pulumi.Any(azurerm_subscription.Current.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import azure:core/subscriptionPolicyAssignment:SubscriptionPolicyAssignment example /subscriptions/00000000-0000-0000-000000000000/providers/Microsoft.Authorization/policyAssignments/assignment1

```

func GetSubscriptionPolicyAssignment added in v4.9.0

func GetSubscriptionPolicyAssignment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SubscriptionPolicyAssignmentState, opts ...pulumi.ResourceOption) (*SubscriptionPolicyAssignment, error)

GetSubscriptionPolicyAssignment gets an existing SubscriptionPolicyAssignment 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 NewSubscriptionPolicyAssignment added in v4.9.0

func NewSubscriptionPolicyAssignment(ctx *pulumi.Context,
	name string, args *SubscriptionPolicyAssignmentArgs, opts ...pulumi.ResourceOption) (*SubscriptionPolicyAssignment, error)

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

func (*SubscriptionPolicyAssignment) ElementType added in v4.9.0

func (*SubscriptionPolicyAssignment) ElementType() reflect.Type

func (*SubscriptionPolicyAssignment) ToSubscriptionPolicyAssignmentOutput added in v4.9.0

func (i *SubscriptionPolicyAssignment) ToSubscriptionPolicyAssignmentOutput() SubscriptionPolicyAssignmentOutput

func (*SubscriptionPolicyAssignment) ToSubscriptionPolicyAssignmentOutputWithContext added in v4.9.0

func (i *SubscriptionPolicyAssignment) ToSubscriptionPolicyAssignmentOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentOutput

func (*SubscriptionPolicyAssignment) ToSubscriptionPolicyAssignmentPtrOutput added in v4.9.0

func (i *SubscriptionPolicyAssignment) ToSubscriptionPolicyAssignmentPtrOutput() SubscriptionPolicyAssignmentPtrOutput

func (*SubscriptionPolicyAssignment) ToSubscriptionPolicyAssignmentPtrOutputWithContext added in v4.9.0

func (i *SubscriptionPolicyAssignment) ToSubscriptionPolicyAssignmentPtrOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentPtrOutput

type SubscriptionPolicyAssignmentArgs added in v4.9.0

type SubscriptionPolicyAssignmentArgs 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
	// A `identity` block as defined below.
	Identity SubscriptionPolicyAssignmentIdentityPtrInput
	// The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
	Location 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
	// 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. Changing this forces a new Management Group Policy Assignment to be created.
	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 ID of the Subscription where this Policy Assignment should be created. Changing this forces a new Policy Assignment to be created.
	SubscriptionId pulumi.StringInput
}

The set of arguments for constructing a SubscriptionPolicyAssignment resource.

func (SubscriptionPolicyAssignmentArgs) ElementType added in v4.9.0

type SubscriptionPolicyAssignmentArray added in v4.9.0

type SubscriptionPolicyAssignmentArray []SubscriptionPolicyAssignmentInput

func (SubscriptionPolicyAssignmentArray) ElementType added in v4.9.0

func (SubscriptionPolicyAssignmentArray) ToSubscriptionPolicyAssignmentArrayOutput added in v4.9.0

func (i SubscriptionPolicyAssignmentArray) ToSubscriptionPolicyAssignmentArrayOutput() SubscriptionPolicyAssignmentArrayOutput

func (SubscriptionPolicyAssignmentArray) ToSubscriptionPolicyAssignmentArrayOutputWithContext added in v4.9.0

func (i SubscriptionPolicyAssignmentArray) ToSubscriptionPolicyAssignmentArrayOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentArrayOutput

type SubscriptionPolicyAssignmentArrayInput added in v4.9.0

type SubscriptionPolicyAssignmentArrayInput interface {
	pulumi.Input

	ToSubscriptionPolicyAssignmentArrayOutput() SubscriptionPolicyAssignmentArrayOutput
	ToSubscriptionPolicyAssignmentArrayOutputWithContext(context.Context) SubscriptionPolicyAssignmentArrayOutput
}

SubscriptionPolicyAssignmentArrayInput is an input type that accepts SubscriptionPolicyAssignmentArray and SubscriptionPolicyAssignmentArrayOutput values. You can construct a concrete instance of `SubscriptionPolicyAssignmentArrayInput` via:

SubscriptionPolicyAssignmentArray{ SubscriptionPolicyAssignmentArgs{...} }

type SubscriptionPolicyAssignmentArrayOutput added in v4.9.0

type SubscriptionPolicyAssignmentArrayOutput struct{ *pulumi.OutputState }

func (SubscriptionPolicyAssignmentArrayOutput) ElementType added in v4.9.0

func (SubscriptionPolicyAssignmentArrayOutput) Index added in v4.9.0

func (SubscriptionPolicyAssignmentArrayOutput) ToSubscriptionPolicyAssignmentArrayOutput added in v4.9.0

func (o SubscriptionPolicyAssignmentArrayOutput) ToSubscriptionPolicyAssignmentArrayOutput() SubscriptionPolicyAssignmentArrayOutput

func (SubscriptionPolicyAssignmentArrayOutput) ToSubscriptionPolicyAssignmentArrayOutputWithContext added in v4.9.0

func (o SubscriptionPolicyAssignmentArrayOutput) ToSubscriptionPolicyAssignmentArrayOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentArrayOutput

type SubscriptionPolicyAssignmentIdentity added in v4.9.0

type SubscriptionPolicyAssignmentIdentity struct {
	// The Principal ID of the Policy Assignment for this Subscription.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID of the Policy Assignment for this Subscription.
	TenantId *string `pulumi:"tenantId"`
	// The Type of Managed Identity which should be added to this Policy Definition. The only possible value is `SystemAssigned`.
	Type *string `pulumi:"type"`
}

type SubscriptionPolicyAssignmentIdentityArgs added in v4.9.0

type SubscriptionPolicyAssignmentIdentityArgs struct {
	// The Principal ID of the Policy Assignment for this Subscription.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID of the Policy Assignment for this Subscription.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// The Type of Managed Identity which should be added to this Policy Definition. The only possible value is `SystemAssigned`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (SubscriptionPolicyAssignmentIdentityArgs) ElementType added in v4.9.0

func (SubscriptionPolicyAssignmentIdentityArgs) ToSubscriptionPolicyAssignmentIdentityOutput added in v4.9.0

func (i SubscriptionPolicyAssignmentIdentityArgs) ToSubscriptionPolicyAssignmentIdentityOutput() SubscriptionPolicyAssignmentIdentityOutput

func (SubscriptionPolicyAssignmentIdentityArgs) ToSubscriptionPolicyAssignmentIdentityOutputWithContext added in v4.9.0

func (i SubscriptionPolicyAssignmentIdentityArgs) ToSubscriptionPolicyAssignmentIdentityOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentIdentityOutput

func (SubscriptionPolicyAssignmentIdentityArgs) ToSubscriptionPolicyAssignmentIdentityPtrOutput added in v4.9.0

func (i SubscriptionPolicyAssignmentIdentityArgs) ToSubscriptionPolicyAssignmentIdentityPtrOutput() SubscriptionPolicyAssignmentIdentityPtrOutput

func (SubscriptionPolicyAssignmentIdentityArgs) ToSubscriptionPolicyAssignmentIdentityPtrOutputWithContext added in v4.9.0

func (i SubscriptionPolicyAssignmentIdentityArgs) ToSubscriptionPolicyAssignmentIdentityPtrOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentIdentityPtrOutput

type SubscriptionPolicyAssignmentIdentityInput added in v4.9.0

type SubscriptionPolicyAssignmentIdentityInput interface {
	pulumi.Input

	ToSubscriptionPolicyAssignmentIdentityOutput() SubscriptionPolicyAssignmentIdentityOutput
	ToSubscriptionPolicyAssignmentIdentityOutputWithContext(context.Context) SubscriptionPolicyAssignmentIdentityOutput
}

SubscriptionPolicyAssignmentIdentityInput is an input type that accepts SubscriptionPolicyAssignmentIdentityArgs and SubscriptionPolicyAssignmentIdentityOutput values. You can construct a concrete instance of `SubscriptionPolicyAssignmentIdentityInput` via:

SubscriptionPolicyAssignmentIdentityArgs{...}

type SubscriptionPolicyAssignmentIdentityOutput added in v4.9.0

type SubscriptionPolicyAssignmentIdentityOutput struct{ *pulumi.OutputState }

func (SubscriptionPolicyAssignmentIdentityOutput) ElementType added in v4.9.0

func (SubscriptionPolicyAssignmentIdentityOutput) PrincipalId added in v4.9.0

The Principal ID of the Policy Assignment for this Subscription.

func (SubscriptionPolicyAssignmentIdentityOutput) TenantId added in v4.9.0

The Tenant ID of the Policy Assignment for this Subscription.

func (SubscriptionPolicyAssignmentIdentityOutput) ToSubscriptionPolicyAssignmentIdentityOutput added in v4.9.0

func (o SubscriptionPolicyAssignmentIdentityOutput) ToSubscriptionPolicyAssignmentIdentityOutput() SubscriptionPolicyAssignmentIdentityOutput

func (SubscriptionPolicyAssignmentIdentityOutput) ToSubscriptionPolicyAssignmentIdentityOutputWithContext added in v4.9.0

func (o SubscriptionPolicyAssignmentIdentityOutput) ToSubscriptionPolicyAssignmentIdentityOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentIdentityOutput

func (SubscriptionPolicyAssignmentIdentityOutput) ToSubscriptionPolicyAssignmentIdentityPtrOutput added in v4.9.0

func (o SubscriptionPolicyAssignmentIdentityOutput) ToSubscriptionPolicyAssignmentIdentityPtrOutput() SubscriptionPolicyAssignmentIdentityPtrOutput

func (SubscriptionPolicyAssignmentIdentityOutput) ToSubscriptionPolicyAssignmentIdentityPtrOutputWithContext added in v4.9.0

func (o SubscriptionPolicyAssignmentIdentityOutput) ToSubscriptionPolicyAssignmentIdentityPtrOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentIdentityPtrOutput

func (SubscriptionPolicyAssignmentIdentityOutput) Type added in v4.9.0

The Type of Managed Identity which should be added to this Policy Definition. The only possible value is `SystemAssigned`.

type SubscriptionPolicyAssignmentIdentityPtrInput added in v4.9.0

type SubscriptionPolicyAssignmentIdentityPtrInput interface {
	pulumi.Input

	ToSubscriptionPolicyAssignmentIdentityPtrOutput() SubscriptionPolicyAssignmentIdentityPtrOutput
	ToSubscriptionPolicyAssignmentIdentityPtrOutputWithContext(context.Context) SubscriptionPolicyAssignmentIdentityPtrOutput
}

SubscriptionPolicyAssignmentIdentityPtrInput is an input type that accepts SubscriptionPolicyAssignmentIdentityArgs, SubscriptionPolicyAssignmentIdentityPtr and SubscriptionPolicyAssignmentIdentityPtrOutput values. You can construct a concrete instance of `SubscriptionPolicyAssignmentIdentityPtrInput` via:

        SubscriptionPolicyAssignmentIdentityArgs{...}

or:

        nil

type SubscriptionPolicyAssignmentIdentityPtrOutput added in v4.9.0

type SubscriptionPolicyAssignmentIdentityPtrOutput struct{ *pulumi.OutputState }

func (SubscriptionPolicyAssignmentIdentityPtrOutput) Elem added in v4.9.0

func (SubscriptionPolicyAssignmentIdentityPtrOutput) ElementType added in v4.9.0

func (SubscriptionPolicyAssignmentIdentityPtrOutput) PrincipalId added in v4.9.0

The Principal ID of the Policy Assignment for this Subscription.

func (SubscriptionPolicyAssignmentIdentityPtrOutput) TenantId added in v4.9.0

The Tenant ID of the Policy Assignment for this Subscription.

func (SubscriptionPolicyAssignmentIdentityPtrOutput) ToSubscriptionPolicyAssignmentIdentityPtrOutput added in v4.9.0

func (o SubscriptionPolicyAssignmentIdentityPtrOutput) ToSubscriptionPolicyAssignmentIdentityPtrOutput() SubscriptionPolicyAssignmentIdentityPtrOutput

func (SubscriptionPolicyAssignmentIdentityPtrOutput) ToSubscriptionPolicyAssignmentIdentityPtrOutputWithContext added in v4.9.0

func (o SubscriptionPolicyAssignmentIdentityPtrOutput) ToSubscriptionPolicyAssignmentIdentityPtrOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentIdentityPtrOutput

func (SubscriptionPolicyAssignmentIdentityPtrOutput) Type added in v4.9.0

The Type of Managed Identity which should be added to this Policy Definition. The only possible value is `SystemAssigned`.

type SubscriptionPolicyAssignmentInput added in v4.9.0

type SubscriptionPolicyAssignmentInput interface {
	pulumi.Input

	ToSubscriptionPolicyAssignmentOutput() SubscriptionPolicyAssignmentOutput
	ToSubscriptionPolicyAssignmentOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentOutput
}

type SubscriptionPolicyAssignmentMap added in v4.9.0

type SubscriptionPolicyAssignmentMap map[string]SubscriptionPolicyAssignmentInput

func (SubscriptionPolicyAssignmentMap) ElementType added in v4.9.0

func (SubscriptionPolicyAssignmentMap) ToSubscriptionPolicyAssignmentMapOutput added in v4.9.0

func (i SubscriptionPolicyAssignmentMap) ToSubscriptionPolicyAssignmentMapOutput() SubscriptionPolicyAssignmentMapOutput

func (SubscriptionPolicyAssignmentMap) ToSubscriptionPolicyAssignmentMapOutputWithContext added in v4.9.0

func (i SubscriptionPolicyAssignmentMap) ToSubscriptionPolicyAssignmentMapOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentMapOutput

type SubscriptionPolicyAssignmentMapInput added in v4.9.0

type SubscriptionPolicyAssignmentMapInput interface {
	pulumi.Input

	ToSubscriptionPolicyAssignmentMapOutput() SubscriptionPolicyAssignmentMapOutput
	ToSubscriptionPolicyAssignmentMapOutputWithContext(context.Context) SubscriptionPolicyAssignmentMapOutput
}

SubscriptionPolicyAssignmentMapInput is an input type that accepts SubscriptionPolicyAssignmentMap and SubscriptionPolicyAssignmentMapOutput values. You can construct a concrete instance of `SubscriptionPolicyAssignmentMapInput` via:

SubscriptionPolicyAssignmentMap{ "key": SubscriptionPolicyAssignmentArgs{...} }

type SubscriptionPolicyAssignmentMapOutput added in v4.9.0

type SubscriptionPolicyAssignmentMapOutput struct{ *pulumi.OutputState }

func (SubscriptionPolicyAssignmentMapOutput) ElementType added in v4.9.0

func (SubscriptionPolicyAssignmentMapOutput) MapIndex added in v4.9.0

func (SubscriptionPolicyAssignmentMapOutput) ToSubscriptionPolicyAssignmentMapOutput added in v4.9.0

func (o SubscriptionPolicyAssignmentMapOutput) ToSubscriptionPolicyAssignmentMapOutput() SubscriptionPolicyAssignmentMapOutput

func (SubscriptionPolicyAssignmentMapOutput) ToSubscriptionPolicyAssignmentMapOutputWithContext added in v4.9.0

func (o SubscriptionPolicyAssignmentMapOutput) ToSubscriptionPolicyAssignmentMapOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentMapOutput

type SubscriptionPolicyAssignmentOutput added in v4.9.0

type SubscriptionPolicyAssignmentOutput struct {
	*pulumi.OutputState
}

func (SubscriptionPolicyAssignmentOutput) ElementType added in v4.9.0

func (SubscriptionPolicyAssignmentOutput) ToSubscriptionPolicyAssignmentOutput added in v4.9.0

func (o SubscriptionPolicyAssignmentOutput) ToSubscriptionPolicyAssignmentOutput() SubscriptionPolicyAssignmentOutput

func (SubscriptionPolicyAssignmentOutput) ToSubscriptionPolicyAssignmentOutputWithContext added in v4.9.0

func (o SubscriptionPolicyAssignmentOutput) ToSubscriptionPolicyAssignmentOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentOutput

func (SubscriptionPolicyAssignmentOutput) ToSubscriptionPolicyAssignmentPtrOutput added in v4.9.0

func (o SubscriptionPolicyAssignmentOutput) ToSubscriptionPolicyAssignmentPtrOutput() SubscriptionPolicyAssignmentPtrOutput

func (SubscriptionPolicyAssignmentOutput) ToSubscriptionPolicyAssignmentPtrOutputWithContext added in v4.9.0

func (o SubscriptionPolicyAssignmentOutput) ToSubscriptionPolicyAssignmentPtrOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentPtrOutput

type SubscriptionPolicyAssignmentPtrInput added in v4.9.0

type SubscriptionPolicyAssignmentPtrInput interface {
	pulumi.Input

	ToSubscriptionPolicyAssignmentPtrOutput() SubscriptionPolicyAssignmentPtrOutput
	ToSubscriptionPolicyAssignmentPtrOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentPtrOutput
}

type SubscriptionPolicyAssignmentPtrOutput added in v4.9.0

type SubscriptionPolicyAssignmentPtrOutput struct {
	*pulumi.OutputState
}

func (SubscriptionPolicyAssignmentPtrOutput) ElementType added in v4.9.0

func (SubscriptionPolicyAssignmentPtrOutput) ToSubscriptionPolicyAssignmentPtrOutput added in v4.9.0

func (o SubscriptionPolicyAssignmentPtrOutput) ToSubscriptionPolicyAssignmentPtrOutput() SubscriptionPolicyAssignmentPtrOutput

func (SubscriptionPolicyAssignmentPtrOutput) ToSubscriptionPolicyAssignmentPtrOutputWithContext added in v4.9.0

func (o SubscriptionPolicyAssignmentPtrOutput) ToSubscriptionPolicyAssignmentPtrOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentPtrOutput

type SubscriptionPolicyAssignmentState added in v4.9.0

type SubscriptionPolicyAssignmentState 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
	// A `identity` block as defined below.
	Identity SubscriptionPolicyAssignmentIdentityPtrInput
	// The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
	Location 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
	// 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. Changing this forces a new Management Group Policy Assignment to be created.
	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
	// The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new Policy Assignment to be created.
	SubscriptionId pulumi.StringPtrInput
}

func (SubscriptionPolicyAssignmentState) ElementType added in v4.9.0

type SubscriptionPtrInput

type SubscriptionPtrInput interface {
	pulumi.Input

	ToSubscriptionPtrOutput() SubscriptionPtrOutput
	ToSubscriptionPtrOutputWithContext(ctx context.Context) SubscriptionPtrOutput
}

type SubscriptionPtrOutput

type SubscriptionPtrOutput struct {
	*pulumi.OutputState
}

func (SubscriptionPtrOutput) ElementType

func (SubscriptionPtrOutput) ElementType() reflect.Type

func (SubscriptionPtrOutput) ToSubscriptionPtrOutput

func (o SubscriptionPtrOutput) ToSubscriptionPtrOutput() SubscriptionPtrOutput

func (SubscriptionPtrOutput) ToSubscriptionPtrOutputWithContext

func (o SubscriptionPtrOutput) ToSubscriptionPtrOutputWithContext(ctx context.Context) SubscriptionPtrOutput

type SubscriptionState

type SubscriptionState struct {
	// The Alias name for the subscription. This provider will generate a new GUID if this is not supplied. Changing this forces a new Subscription to be created.
	Alias pulumi.StringPtrInput
	// The Azure Billing Scope ID. Can be either a Microsoft Customer Account Billing Scope ID or an Enrollment Billing Scope ID.
	BillingScopeId pulumi.StringPtrInput
	// The ID of the Subscription. Changing this forces a new Subscription to be created.
	SubscriptionId pulumi.StringPtrInput
	// The Name of the Subscription. This is the Display Name in the portal.
	SubscriptionName pulumi.StringPtrInput
	Tags             pulumi.StringMapInput
	// The ID of the Tenant to which the subscription belongs.
	TenantId pulumi.StringPtrInput
	// The workload type of the Subscription.  Possible values are `Production` (default) and `DevTest`. Changing this forces a new Subscription to be created.
	Workload pulumi.StringPtrInput
}

func (SubscriptionState) ElementType

func (SubscriptionState) ElementType() reflect.Type

type SubscriptionTemplateDeployment

type SubscriptionTemplateDeployment struct {
	pulumi.CustomResourceState

	// The Debug Level which should be used for this Subscription Template Deployment. Possible values are `none`, `requestContent`, `responseContent` and `requestContent, responseContent`.
	DebugLevel pulumi.StringPtrOutput `pulumi:"debugLevel"`
	// The Azure Region where the Subscription Template Deployment should exist. Changing this forces a new Subscription Template Deployment to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The name which should be used for this Subscription Template Deployment. Changing this forces a new Subscription 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 Subscription Template Deployment.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// The contents of the ARM Template which should be deployed into this Subscription.
	TemplateContent pulumi.StringOutput `pulumi:"templateContent"`
	// The ID of the Template Spec Version to deploy into the Subscription. Cannot be specified with `templateContent`.
	TemplateSpecVersionId pulumi.StringPtrOutput `pulumi:"templateSpecVersionId"`
}

Manages a Subscription Template Deployment.

## Example Usage

```go package main

import (

"fmt"

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := core.NewSubscriptionTemplateDeployment(ctx, "example", &core.SubscriptionTemplateDeploymentArgs{
			Location:        pulumi.String("West Europe"),
			TemplateContent: pulumi.String(fmt.Sprintf("%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/2015-01-01/deploymentTemplate.json#\",\n", "   \"contentVersion\": \"1.0.0.0\",\n", "   \"parameters\": {},\n", "   \"variables\": {},\n", "   \"resources\": [\n", "     {\n", "       \"type\": \"Microsoft.Resources/resourceGroups\",\n", "       \"apiVersion\": \"2018-05-01\",\n", "       \"location\": \"West Europe\",\n", "       \"name\": \"some-resource-group\",\n", "       \"properties\": {}\n", "     }\n", "   ]\n", " }\n", " \n")),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

$ pulumi import azure:core/subscriptionTemplateDeployment:SubscriptionTemplateDeployment example /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Resources/deployments/template1

```

func GetSubscriptionTemplateDeployment

func GetSubscriptionTemplateDeployment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SubscriptionTemplateDeploymentState, opts ...pulumi.ResourceOption) (*SubscriptionTemplateDeployment, error)

GetSubscriptionTemplateDeployment gets an existing SubscriptionTemplateDeployment 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 NewSubscriptionTemplateDeployment

func NewSubscriptionTemplateDeployment(ctx *pulumi.Context,
	name string, args *SubscriptionTemplateDeploymentArgs, opts ...pulumi.ResourceOption) (*SubscriptionTemplateDeployment, error)

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

func (*SubscriptionTemplateDeployment) ElementType

func (*SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentOutput

func (i *SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentOutput() SubscriptionTemplateDeploymentOutput

func (*SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentOutputWithContext

func (i *SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentOutputWithContext(ctx context.Context) SubscriptionTemplateDeploymentOutput

func (*SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentPtrOutput

func (i *SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentPtrOutput() SubscriptionTemplateDeploymentPtrOutput

func (*SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentPtrOutputWithContext

func (i *SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentPtrOutputWithContext(ctx context.Context) SubscriptionTemplateDeploymentPtrOutput

type SubscriptionTemplateDeploymentArgs

type SubscriptionTemplateDeploymentArgs struct {
	// The Debug Level which should be used for this Subscription Template Deployment. Possible values are `none`, `requestContent`, `responseContent` and `requestContent, responseContent`.
	DebugLevel pulumi.StringPtrInput
	// The Azure Region where the Subscription Template Deployment should exist. Changing this forces a new Subscription Template Deployment to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this Subscription Template Deployment. Changing this forces a new Subscription 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 Subscription Template Deployment.
	Tags pulumi.StringMapInput
	// The contents of the ARM Template which should be deployed into this Subscription.
	TemplateContent pulumi.StringPtrInput
	// The ID of the Template Spec Version to deploy into the Subscription. Cannot be specified with `templateContent`.
	TemplateSpecVersionId pulumi.StringPtrInput
}

The set of arguments for constructing a SubscriptionTemplateDeployment resource.

func (SubscriptionTemplateDeploymentArgs) ElementType

type SubscriptionTemplateDeploymentArray

type SubscriptionTemplateDeploymentArray []SubscriptionTemplateDeploymentInput

func (SubscriptionTemplateDeploymentArray) ElementType

func (SubscriptionTemplateDeploymentArray) ToSubscriptionTemplateDeploymentArrayOutput

func (i SubscriptionTemplateDeploymentArray) ToSubscriptionTemplateDeploymentArrayOutput() SubscriptionTemplateDeploymentArrayOutput

func (SubscriptionTemplateDeploymentArray) ToSubscriptionTemplateDeploymentArrayOutputWithContext

func (i SubscriptionTemplateDeploymentArray) ToSubscriptionTemplateDeploymentArrayOutputWithContext(ctx context.Context) SubscriptionTemplateDeploymentArrayOutput

type SubscriptionTemplateDeploymentArrayInput

type SubscriptionTemplateDeploymentArrayInput interface {
	pulumi.Input

	ToSubscriptionTemplateDeploymentArrayOutput() SubscriptionTemplateDeploymentArrayOutput
	ToSubscriptionTemplateDeploymentArrayOutputWithContext(context.Context) SubscriptionTemplateDeploymentArrayOutput
}

SubscriptionTemplateDeploymentArrayInput is an input type that accepts SubscriptionTemplateDeploymentArray and SubscriptionTemplateDeploymentArrayOutput values. You can construct a concrete instance of `SubscriptionTemplateDeploymentArrayInput` via:

SubscriptionTemplateDeploymentArray{ SubscriptionTemplateDeploymentArgs{...} }

type SubscriptionTemplateDeploymentArrayOutput

type SubscriptionTemplateDeploymentArrayOutput struct{ *pulumi.OutputState }

func (SubscriptionTemplateDeploymentArrayOutput) ElementType

func (SubscriptionTemplateDeploymentArrayOutput) Index

func (SubscriptionTemplateDeploymentArrayOutput) ToSubscriptionTemplateDeploymentArrayOutput

func (o SubscriptionTemplateDeploymentArrayOutput) ToSubscriptionTemplateDeploymentArrayOutput() SubscriptionTemplateDeploymentArrayOutput

func (SubscriptionTemplateDeploymentArrayOutput) ToSubscriptionTemplateDeploymentArrayOutputWithContext

func (o SubscriptionTemplateDeploymentArrayOutput) ToSubscriptionTemplateDeploymentArrayOutputWithContext(ctx context.Context) SubscriptionTemplateDeploymentArrayOutput

type SubscriptionTemplateDeploymentInput

type SubscriptionTemplateDeploymentInput interface {
	pulumi.Input

	ToSubscriptionTemplateDeploymentOutput() SubscriptionTemplateDeploymentOutput
	ToSubscriptionTemplateDeploymentOutputWithContext(ctx context.Context) SubscriptionTemplateDeploymentOutput
}

type SubscriptionTemplateDeploymentMap

type SubscriptionTemplateDeploymentMap map[string]SubscriptionTemplateDeploymentInput

func (SubscriptionTemplateDeploymentMap) ElementType

func (SubscriptionTemplateDeploymentMap) ToSubscriptionTemplateDeploymentMapOutput

func (i SubscriptionTemplateDeploymentMap) ToSubscriptionTemplateDeploymentMapOutput() SubscriptionTemplateDeploymentMapOutput

func (SubscriptionTemplateDeploymentMap) ToSubscriptionTemplateDeploymentMapOutputWithContext

func (i SubscriptionTemplateDeploymentMap) ToSubscriptionTemplateDeploymentMapOutputWithContext(ctx context.Context) SubscriptionTemplateDeploymentMapOutput

type SubscriptionTemplateDeploymentMapInput

type SubscriptionTemplateDeploymentMapInput interface {
	pulumi.Input

	ToSubscriptionTemplateDeploymentMapOutput() SubscriptionTemplateDeploymentMapOutput
	ToSubscriptionTemplateDeploymentMapOutputWithContext(context.Context) SubscriptionTemplateDeploymentMapOutput
}

SubscriptionTemplateDeploymentMapInput is an input type that accepts SubscriptionTemplateDeploymentMap and SubscriptionTemplateDeploymentMapOutput values. You can construct a concrete instance of `SubscriptionTemplateDeploymentMapInput` via:

SubscriptionTemplateDeploymentMap{ "key": SubscriptionTemplateDeploymentArgs{...} }

type SubscriptionTemplateDeploymentMapOutput

type SubscriptionTemplateDeploymentMapOutput struct{ *pulumi.OutputState }

func (SubscriptionTemplateDeploymentMapOutput) ElementType

func (SubscriptionTemplateDeploymentMapOutput) MapIndex

func (SubscriptionTemplateDeploymentMapOutput) ToSubscriptionTemplateDeploymentMapOutput

func (o SubscriptionTemplateDeploymentMapOutput) ToSubscriptionTemplateDeploymentMapOutput() SubscriptionTemplateDeploymentMapOutput

func (SubscriptionTemplateDeploymentMapOutput) ToSubscriptionTemplateDeploymentMapOutputWithContext

func (o SubscriptionTemplateDeploymentMapOutput) ToSubscriptionTemplateDeploymentMapOutputWithContext(ctx context.Context) SubscriptionTemplateDeploymentMapOutput

type SubscriptionTemplateDeploymentOutput

type SubscriptionTemplateDeploymentOutput struct {
	*pulumi.OutputState
}

func (SubscriptionTemplateDeploymentOutput) ElementType

func (SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentOutput

func (o SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentOutput() SubscriptionTemplateDeploymentOutput

func (SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentOutputWithContext

func (o SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentOutputWithContext(ctx context.Context) SubscriptionTemplateDeploymentOutput

func (SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentPtrOutput

func (o SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentPtrOutput() SubscriptionTemplateDeploymentPtrOutput

func (SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentPtrOutputWithContext

func (o SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentPtrOutputWithContext(ctx context.Context) SubscriptionTemplateDeploymentPtrOutput

type SubscriptionTemplateDeploymentPtrInput

type SubscriptionTemplateDeploymentPtrInput interface {
	pulumi.Input

	ToSubscriptionTemplateDeploymentPtrOutput() SubscriptionTemplateDeploymentPtrOutput
	ToSubscriptionTemplateDeploymentPtrOutputWithContext(ctx context.Context) SubscriptionTemplateDeploymentPtrOutput
}

type SubscriptionTemplateDeploymentPtrOutput

type SubscriptionTemplateDeploymentPtrOutput struct {
	*pulumi.OutputState
}

func (SubscriptionTemplateDeploymentPtrOutput) ElementType

func (SubscriptionTemplateDeploymentPtrOutput) ToSubscriptionTemplateDeploymentPtrOutput

func (o SubscriptionTemplateDeploymentPtrOutput) ToSubscriptionTemplateDeploymentPtrOutput() SubscriptionTemplateDeploymentPtrOutput

func (SubscriptionTemplateDeploymentPtrOutput) ToSubscriptionTemplateDeploymentPtrOutputWithContext

func (o SubscriptionTemplateDeploymentPtrOutput) ToSubscriptionTemplateDeploymentPtrOutputWithContext(ctx context.Context) SubscriptionTemplateDeploymentPtrOutput

type SubscriptionTemplateDeploymentState

type SubscriptionTemplateDeploymentState struct {
	// The Debug Level which should be used for this Subscription Template Deployment. Possible values are `none`, `requestContent`, `responseContent` and `requestContent, responseContent`.
	DebugLevel pulumi.StringPtrInput
	// The Azure Region where the Subscription Template Deployment should exist. Changing this forces a new Subscription Template Deployment to be created.
	Location pulumi.StringPtrInput
	// The name which should be used for this Subscription Template Deployment. Changing this forces a new Subscription 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 Subscription Template Deployment.
	Tags pulumi.StringMapInput
	// The contents of the ARM Template which should be deployed into this Subscription.
	TemplateContent pulumi.StringPtrInput
	// The ID of the Template Spec Version to deploy into the Subscription. Cannot be specified with `templateContent`.
	TemplateSpecVersionId pulumi.StringPtrInput
}

func (SubscriptionTemplateDeploymentState) ElementType

type TemplateDeployment

type TemplateDeployment struct {
	pulumi.CustomResourceState

	// Specifies the mode that is used to deploy resources. This value could be either `Incremental` or `Complete`.
	// Note that you will almost *always* want this to be set to `Incremental` otherwise the deployment will destroy all infrastructure not
	// specified within the template, and this provider will not be aware of this.
	DeploymentMode pulumi.StringOutput `pulumi:"deploymentMode"`
	// Specifies the name of the template deployment. Changing this forces a
	// new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// A map of supported scalar output types returned from the deployment (currently, Azure Template Deployment outputs of type String, Int and Bool are supported, and are converted to strings - others will be ignored) and can be accessed using `.outputs["name"]`.
	Outputs pulumi.StringMapOutput `pulumi:"outputs"`
	// Specifies the name and value pairs that define the deployment parameters for the template.
	Parameters pulumi.StringMapOutput `pulumi:"parameters"`
	// Specifies a valid Azure JSON parameters file that define the deployment parameters. It can contain KeyVault references
	ParametersBody pulumi.StringPtrOutput `pulumi:"parametersBody"`
	// The name of the resource group in which to
	// create the template deployment.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Specifies the JSON definition for the template.
	TemplateBody pulumi.StringOutput `pulumi:"templateBody"`
}

Manages a template deployment of resources

> **Note on ARM Template Deployments:** Due to the way the underlying Azure API is designed, this provider can only manage the deployment of the ARM Template - and not any resources which are created by it. This means that when deleting the `core.TemplateDeployment` resource, this provider will only remove the reference to the deployment, whilst leaving any resources created by that ARM Template Deployment. One workaround for this is to use a unique Resource Group for each ARM Template Deployment, which means deleting the Resource Group would contain any resources created within it - however this isn't ideal. [More information](https://docs.microsoft.com/en-us/rest/api/resources/deployments#Deployments_Delete).

## Example Usage

> **Note:** This example uses Storage Accounts and Public IP's which are natively supported by this provider - we'd highly recommend using the Native Resources where possible instead rather than an ARM Template, for the reasons outlined above.

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"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
		}
		exampleTemplateDeployment, err := core.NewTemplateDeployment(ctx, "exampleTemplateDeployment", &core.TemplateDeploymentArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			TemplateBody:      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%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/2015-01-01/deploymentTemplate.json#\",\n", "  \"contentVersion\": \"1.0.0.0\",\n", "  \"parameters\": {\n", "    \"storageAccountType\": {\n", "      \"type\": \"string\",\n", "      \"defaultValue\": \"Standard_LRS\",\n", "      \"allowedValues\": [\n", "        \"Standard_LRS\",\n", "        \"Standard_GRS\",\n", "        \"Standard_ZRS\"\n", "      ],\n", "      \"metadata\": {\n", "        \"description\": \"Storage Account type\"\n", "      }\n", "    }\n", "  },\n", "  \"variables\": {\n", "    \"location\": \"[resourceGroup().location]\",\n", "    \"storageAccountName\": \"[concat(uniquestring(resourceGroup().id), 'storage')]\",\n", "    \"publicIPAddressName\": \"[concat('myPublicIp', uniquestring(resourceGroup().id))]\",\n", "    \"publicIPAddressType\": \"Dynamic\",\n", "    \"apiVersion\": \"2015-06-15\",\n", "    \"dnsLabelPrefix\": \"example-acctest\"\n", "  },\n", "  \"resources\": [\n", "    {\n", "      \"type\": \"Microsoft.Storage/storageAccounts\",\n", "      \"name\": \"[variables('storageAccountName')]\",\n", "      \"apiVersion\": \"[variables('apiVersion')]\",\n", "      \"location\": \"[variables('location')]\",\n", "      \"properties\": {\n", "        \"accountType\": \"[parameters('storageAccountType')]\"\n", "      }\n", "    },\n", "    {\n", "      \"type\": \"Microsoft.Network/publicIPAddresses\",\n", "      \"apiVersion\": \"[variables('apiVersion')]\",\n", "      \"name\": \"[variables('publicIPAddressName')]\",\n", "      \"location\": \"[variables('location')]\",\n", "      \"properties\": {\n", "        \"publicIPAllocationMethod\": \"[variables('publicIPAddressType')]\",\n", "        \"dnsSettings\": {\n", "          \"domainNameLabel\": \"[variables('dnsLabelPrefix')]\"\n", "        }\n", "      }\n", "    }\n", "  ],\n", "  \"outputs\": {\n", "    \"storageAccountName\": {\n", "      \"type\": \"string\",\n", "      \"value\": \"[variables('storageAccountName')]\"\n", "    }\n", "  }\n", "}\n")),
			Parameters: pulumi.StringMap{
				"storageAccountType": pulumi.String("Standard_GRS"),
			},
			DeploymentMode: pulumi.String("Incremental"),
		})
		if err != nil {
			return err
		}
		ctx.Export("storageAccountName", exampleTemplateDeployment.Outputs.ApplyT(func(outputs map[string]string) (string, error) {
			return outputs.StorageAccountName, nil
		}).(pulumi.StringOutput))
		return nil
	})
}

``` ## Note

This provider does not know about the individual resources created by Azure using a deployment template and therefore cannot delete these resources during a destroy. Destroying a template deployment removes the associated deployment operations, but will not delete the Azure resources created by the deployment. In order to delete these resources, the containing resource group must also be destroyed. [More information](https://docs.microsoft.com/en-us/rest/api/resources/deployments#Deployments_Delete).

func GetTemplateDeployment

func GetTemplateDeployment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TemplateDeploymentState, opts ...pulumi.ResourceOption) (*TemplateDeployment, error)

GetTemplateDeployment gets an existing TemplateDeployment 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 NewTemplateDeployment

func NewTemplateDeployment(ctx *pulumi.Context,
	name string, args *TemplateDeploymentArgs, opts ...pulumi.ResourceOption) (*TemplateDeployment, error)

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

func (*TemplateDeployment) ElementType

func (*TemplateDeployment) ElementType() reflect.Type

func (*TemplateDeployment) ToTemplateDeploymentOutput

func (i *TemplateDeployment) ToTemplateDeploymentOutput() TemplateDeploymentOutput

func (*TemplateDeployment) ToTemplateDeploymentOutputWithContext

func (i *TemplateDeployment) ToTemplateDeploymentOutputWithContext(ctx context.Context) TemplateDeploymentOutput

func (*TemplateDeployment) ToTemplateDeploymentPtrOutput

func (i *TemplateDeployment) ToTemplateDeploymentPtrOutput() TemplateDeploymentPtrOutput

func (*TemplateDeployment) ToTemplateDeploymentPtrOutputWithContext

func (i *TemplateDeployment) ToTemplateDeploymentPtrOutputWithContext(ctx context.Context) TemplateDeploymentPtrOutput

type TemplateDeploymentArgs

type TemplateDeploymentArgs struct {
	// Specifies the mode that is used to deploy resources. This value could be either `Incremental` or `Complete`.
	// Note that you will almost *always* want this to be set to `Incremental` otherwise the deployment will destroy all infrastructure not
	// specified within the template, and this provider will not be aware of this.
	DeploymentMode pulumi.StringInput
	// Specifies the name of the template deployment. Changing this forces a
	// new resource to be created.
	Name pulumi.StringPtrInput
	// Specifies the name and value pairs that define the deployment parameters for the template.
	Parameters pulumi.StringMapInput
	// Specifies a valid Azure JSON parameters file that define the deployment parameters. It can contain KeyVault references
	ParametersBody pulumi.StringPtrInput
	// The name of the resource group in which to
	// create the template deployment.
	ResourceGroupName pulumi.StringInput
	// Specifies the JSON definition for the template.
	TemplateBody pulumi.StringPtrInput
}

The set of arguments for constructing a TemplateDeployment resource.

func (TemplateDeploymentArgs) ElementType

func (TemplateDeploymentArgs) ElementType() reflect.Type

type TemplateDeploymentArray

type TemplateDeploymentArray []TemplateDeploymentInput

func (TemplateDeploymentArray) ElementType

func (TemplateDeploymentArray) ElementType() reflect.Type

func (TemplateDeploymentArray) ToTemplateDeploymentArrayOutput

func (i TemplateDeploymentArray) ToTemplateDeploymentArrayOutput() TemplateDeploymentArrayOutput

func (TemplateDeploymentArray) ToTemplateDeploymentArrayOutputWithContext

func (i TemplateDeploymentArray) ToTemplateDeploymentArrayOutputWithContext(ctx context.Context) TemplateDeploymentArrayOutput

type TemplateDeploymentArrayInput

type TemplateDeploymentArrayInput interface {
	pulumi.Input

	ToTemplateDeploymentArrayOutput() TemplateDeploymentArrayOutput
	ToTemplateDeploymentArrayOutputWithContext(context.Context) TemplateDeploymentArrayOutput
}

TemplateDeploymentArrayInput is an input type that accepts TemplateDeploymentArray and TemplateDeploymentArrayOutput values. You can construct a concrete instance of `TemplateDeploymentArrayInput` via:

TemplateDeploymentArray{ TemplateDeploymentArgs{...} }

type TemplateDeploymentArrayOutput

type TemplateDeploymentArrayOutput struct{ *pulumi.OutputState }

func (TemplateDeploymentArrayOutput) ElementType

func (TemplateDeploymentArrayOutput) Index

func (TemplateDeploymentArrayOutput) ToTemplateDeploymentArrayOutput

func (o TemplateDeploymentArrayOutput) ToTemplateDeploymentArrayOutput() TemplateDeploymentArrayOutput

func (TemplateDeploymentArrayOutput) ToTemplateDeploymentArrayOutputWithContext

func (o TemplateDeploymentArrayOutput) ToTemplateDeploymentArrayOutputWithContext(ctx context.Context) TemplateDeploymentArrayOutput

type TemplateDeploymentInput

type TemplateDeploymentInput interface {
	pulumi.Input

	ToTemplateDeploymentOutput() TemplateDeploymentOutput
	ToTemplateDeploymentOutputWithContext(ctx context.Context) TemplateDeploymentOutput
}

type TemplateDeploymentMap

type TemplateDeploymentMap map[string]TemplateDeploymentInput

func (TemplateDeploymentMap) ElementType

func (TemplateDeploymentMap) ElementType() reflect.Type

func (TemplateDeploymentMap) ToTemplateDeploymentMapOutput

func (i TemplateDeploymentMap) ToTemplateDeploymentMapOutput() TemplateDeploymentMapOutput

func (TemplateDeploymentMap) ToTemplateDeploymentMapOutputWithContext

func (i TemplateDeploymentMap) ToTemplateDeploymentMapOutputWithContext(ctx context.Context) TemplateDeploymentMapOutput

type TemplateDeploymentMapInput

type TemplateDeploymentMapInput interface {
	pulumi.Input

	ToTemplateDeploymentMapOutput() TemplateDeploymentMapOutput
	ToTemplateDeploymentMapOutputWithContext(context.Context) TemplateDeploymentMapOutput
}

TemplateDeploymentMapInput is an input type that accepts TemplateDeploymentMap and TemplateDeploymentMapOutput values. You can construct a concrete instance of `TemplateDeploymentMapInput` via:

TemplateDeploymentMap{ "key": TemplateDeploymentArgs{...} }

type TemplateDeploymentMapOutput

type TemplateDeploymentMapOutput struct{ *pulumi.OutputState }

func (TemplateDeploymentMapOutput) ElementType

func (TemplateDeploymentMapOutput) MapIndex

func (TemplateDeploymentMapOutput) ToTemplateDeploymentMapOutput

func (o TemplateDeploymentMapOutput) ToTemplateDeploymentMapOutput() TemplateDeploymentMapOutput

func (TemplateDeploymentMapOutput) ToTemplateDeploymentMapOutputWithContext

func (o TemplateDeploymentMapOutput) ToTemplateDeploymentMapOutputWithContext(ctx context.Context) TemplateDeploymentMapOutput

type TemplateDeploymentOutput

type TemplateDeploymentOutput struct {
	*pulumi.OutputState
}

func (TemplateDeploymentOutput) ElementType

func (TemplateDeploymentOutput) ElementType() reflect.Type

func (TemplateDeploymentOutput) ToTemplateDeploymentOutput

func (o TemplateDeploymentOutput) ToTemplateDeploymentOutput() TemplateDeploymentOutput

func (TemplateDeploymentOutput) ToTemplateDeploymentOutputWithContext

func (o TemplateDeploymentOutput) ToTemplateDeploymentOutputWithContext(ctx context.Context) TemplateDeploymentOutput

func (TemplateDeploymentOutput) ToTemplateDeploymentPtrOutput

func (o TemplateDeploymentOutput) ToTemplateDeploymentPtrOutput() TemplateDeploymentPtrOutput

func (TemplateDeploymentOutput) ToTemplateDeploymentPtrOutputWithContext

func (o TemplateDeploymentOutput) ToTemplateDeploymentPtrOutputWithContext(ctx context.Context) TemplateDeploymentPtrOutput

type TemplateDeploymentPtrInput

type TemplateDeploymentPtrInput interface {
	pulumi.Input

	ToTemplateDeploymentPtrOutput() TemplateDeploymentPtrOutput
	ToTemplateDeploymentPtrOutputWithContext(ctx context.Context) TemplateDeploymentPtrOutput
}

type TemplateDeploymentPtrOutput

type TemplateDeploymentPtrOutput struct {
	*pulumi.OutputState
}

func (TemplateDeploymentPtrOutput) ElementType

func (TemplateDeploymentPtrOutput) ToTemplateDeploymentPtrOutput

func (o TemplateDeploymentPtrOutput) ToTemplateDeploymentPtrOutput() TemplateDeploymentPtrOutput

func (TemplateDeploymentPtrOutput) ToTemplateDeploymentPtrOutputWithContext

func (o TemplateDeploymentPtrOutput) ToTemplateDeploymentPtrOutputWithContext(ctx context.Context) TemplateDeploymentPtrOutput

type TemplateDeploymentState

type TemplateDeploymentState struct {
	// Specifies the mode that is used to deploy resources. This value could be either `Incremental` or `Complete`.
	// Note that you will almost *always* want this to be set to `Incremental` otherwise the deployment will destroy all infrastructure not
	// specified within the template, and this provider will not be aware of this.
	DeploymentMode pulumi.StringPtrInput
	// Specifies the name of the template deployment. Changing this forces a
	// new resource to be created.
	Name pulumi.StringPtrInput
	// A map of supported scalar output types returned from the deployment (currently, Azure Template Deployment outputs of type String, Int and Bool are supported, and are converted to strings - others will be ignored) and can be accessed using `.outputs["name"]`.
	Outputs pulumi.StringMapInput
	// Specifies the name and value pairs that define the deployment parameters for the template.
	Parameters pulumi.StringMapInput
	// Specifies a valid Azure JSON parameters file that define the deployment parameters. It can contain KeyVault references
	ParametersBody pulumi.StringPtrInput
	// The name of the resource group in which to
	// create the template deployment.
	ResourceGroupName pulumi.StringPtrInput
	// Specifies the JSON definition for the template.
	TemplateBody pulumi.StringPtrInput
}

func (TemplateDeploymentState) ElementType

func (TemplateDeploymentState) ElementType() reflect.Type

type TenantTemplateDeployment

type TenantTemplateDeployment 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"`
	// The name which should be used for this Template. Changing this forces a new Template 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"`
}

## Import

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

```sh

$ pulumi import azure:core/tenantTemplateDeployment:TenantTemplateDeployment example /providers/Microsoft.Resources/deployments/deploy1

```

func GetTenantTemplateDeployment

func GetTenantTemplateDeployment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TenantTemplateDeploymentState, opts ...pulumi.ResourceOption) (*TenantTemplateDeployment, error)

GetTenantTemplateDeployment gets an existing TenantTemplateDeployment 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 NewTenantTemplateDeployment

func NewTenantTemplateDeployment(ctx *pulumi.Context,
	name string, args *TenantTemplateDeploymentArgs, opts ...pulumi.ResourceOption) (*TenantTemplateDeployment, error)

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

func (*TenantTemplateDeployment) ElementType

func (*TenantTemplateDeployment) ElementType() reflect.Type

func (*TenantTemplateDeployment) ToTenantTemplateDeploymentOutput

func (i *TenantTemplateDeployment) ToTenantTemplateDeploymentOutput() TenantTemplateDeploymentOutput

func (*TenantTemplateDeployment) ToTenantTemplateDeploymentOutputWithContext

func (i *TenantTemplateDeployment) ToTenantTemplateDeploymentOutputWithContext(ctx context.Context) TenantTemplateDeploymentOutput

func (*TenantTemplateDeployment) ToTenantTemplateDeploymentPtrOutput

func (i *TenantTemplateDeployment) ToTenantTemplateDeploymentPtrOutput() TenantTemplateDeploymentPtrOutput

func (*TenantTemplateDeployment) ToTenantTemplateDeploymentPtrOutputWithContext

func (i *TenantTemplateDeployment) ToTenantTemplateDeploymentPtrOutputWithContext(ctx context.Context) TenantTemplateDeploymentPtrOutput

type TenantTemplateDeploymentArgs

type TenantTemplateDeploymentArgs 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
	// The name which should be used for this Template. Changing this forces a new Template 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 TenantTemplateDeployment resource.

func (TenantTemplateDeploymentArgs) ElementType

type TenantTemplateDeploymentArray

type TenantTemplateDeploymentArray []TenantTemplateDeploymentInput

func (TenantTemplateDeploymentArray) ElementType

func (TenantTemplateDeploymentArray) ToTenantTemplateDeploymentArrayOutput

func (i TenantTemplateDeploymentArray) ToTenantTemplateDeploymentArrayOutput() TenantTemplateDeploymentArrayOutput

func (TenantTemplateDeploymentArray) ToTenantTemplateDeploymentArrayOutputWithContext

func (i TenantTemplateDeploymentArray) ToTenantTemplateDeploymentArrayOutputWithContext(ctx context.Context) TenantTemplateDeploymentArrayOutput

type TenantTemplateDeploymentArrayInput

type TenantTemplateDeploymentArrayInput interface {
	pulumi.Input

	ToTenantTemplateDeploymentArrayOutput() TenantTemplateDeploymentArrayOutput
	ToTenantTemplateDeploymentArrayOutputWithContext(context.Context) TenantTemplateDeploymentArrayOutput
}

TenantTemplateDeploymentArrayInput is an input type that accepts TenantTemplateDeploymentArray and TenantTemplateDeploymentArrayOutput values. You can construct a concrete instance of `TenantTemplateDeploymentArrayInput` via:

TenantTemplateDeploymentArray{ TenantTemplateDeploymentArgs{...} }

type TenantTemplateDeploymentArrayOutput

type TenantTemplateDeploymentArrayOutput struct{ *pulumi.OutputState }

func (TenantTemplateDeploymentArrayOutput) ElementType

func (TenantTemplateDeploymentArrayOutput) Index

func (TenantTemplateDeploymentArrayOutput) ToTenantTemplateDeploymentArrayOutput

func (o TenantTemplateDeploymentArrayOutput) ToTenantTemplateDeploymentArrayOutput() TenantTemplateDeploymentArrayOutput

func (TenantTemplateDeploymentArrayOutput) ToTenantTemplateDeploymentArrayOutputWithContext

func (o TenantTemplateDeploymentArrayOutput) ToTenantTemplateDeploymentArrayOutputWithContext(ctx context.Context) TenantTemplateDeploymentArrayOutput

type TenantTemplateDeploymentInput

type TenantTemplateDeploymentInput interface {
	pulumi.Input

	ToTenantTemplateDeploymentOutput() TenantTemplateDeploymentOutput
	ToTenantTemplateDeploymentOutputWithContext(ctx context.Context) TenantTemplateDeploymentOutput
}

type TenantTemplateDeploymentMap

type TenantTemplateDeploymentMap map[string]TenantTemplateDeploymentInput

func (TenantTemplateDeploymentMap) ElementType

func (TenantTemplateDeploymentMap) ToTenantTemplateDeploymentMapOutput

func (i TenantTemplateDeploymentMap) ToTenantTemplateDeploymentMapOutput() TenantTemplateDeploymentMapOutput

func (TenantTemplateDeploymentMap) ToTenantTemplateDeploymentMapOutputWithContext

func (i TenantTemplateDeploymentMap) ToTenantTemplateDeploymentMapOutputWithContext(ctx context.Context) TenantTemplateDeploymentMapOutput

type TenantTemplateDeploymentMapInput

type TenantTemplateDeploymentMapInput interface {
	pulumi.Input

	ToTenantTemplateDeploymentMapOutput() TenantTemplateDeploymentMapOutput
	ToTenantTemplateDeploymentMapOutputWithContext(context.Context) TenantTemplateDeploymentMapOutput
}

TenantTemplateDeploymentMapInput is an input type that accepts TenantTemplateDeploymentMap and TenantTemplateDeploymentMapOutput values. You can construct a concrete instance of `TenantTemplateDeploymentMapInput` via:

TenantTemplateDeploymentMap{ "key": TenantTemplateDeploymentArgs{...} }

type TenantTemplateDeploymentMapOutput

type TenantTemplateDeploymentMapOutput struct{ *pulumi.OutputState }

func (TenantTemplateDeploymentMapOutput) ElementType

func (TenantTemplateDeploymentMapOutput) MapIndex

func (TenantTemplateDeploymentMapOutput) ToTenantTemplateDeploymentMapOutput

func (o TenantTemplateDeploymentMapOutput) ToTenantTemplateDeploymentMapOutput() TenantTemplateDeploymentMapOutput

func (TenantTemplateDeploymentMapOutput) ToTenantTemplateDeploymentMapOutputWithContext

func (o TenantTemplateDeploymentMapOutput) ToTenantTemplateDeploymentMapOutputWithContext(ctx context.Context) TenantTemplateDeploymentMapOutput

type TenantTemplateDeploymentOutput

type TenantTemplateDeploymentOutput struct {
	*pulumi.OutputState
}

func (TenantTemplateDeploymentOutput) ElementType

func (TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentOutput

func (o TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentOutput() TenantTemplateDeploymentOutput

func (TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentOutputWithContext

func (o TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentOutputWithContext(ctx context.Context) TenantTemplateDeploymentOutput

func (TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentPtrOutput

func (o TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentPtrOutput() TenantTemplateDeploymentPtrOutput

func (TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentPtrOutputWithContext

func (o TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentPtrOutputWithContext(ctx context.Context) TenantTemplateDeploymentPtrOutput

type TenantTemplateDeploymentPtrInput

type TenantTemplateDeploymentPtrInput interface {
	pulumi.Input

	ToTenantTemplateDeploymentPtrOutput() TenantTemplateDeploymentPtrOutput
	ToTenantTemplateDeploymentPtrOutputWithContext(ctx context.Context) TenantTemplateDeploymentPtrOutput
}

type TenantTemplateDeploymentPtrOutput

type TenantTemplateDeploymentPtrOutput struct {
	*pulumi.OutputState
}

func (TenantTemplateDeploymentPtrOutput) ElementType

func (TenantTemplateDeploymentPtrOutput) ToTenantTemplateDeploymentPtrOutput

func (o TenantTemplateDeploymentPtrOutput) ToTenantTemplateDeploymentPtrOutput() TenantTemplateDeploymentPtrOutput

func (TenantTemplateDeploymentPtrOutput) ToTenantTemplateDeploymentPtrOutputWithContext

func (o TenantTemplateDeploymentPtrOutput) ToTenantTemplateDeploymentPtrOutputWithContext(ctx context.Context) TenantTemplateDeploymentPtrOutput

type TenantTemplateDeploymentState

type TenantTemplateDeploymentState 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
	// The name which should be used for this Template. Changing this forces a new Template 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 (TenantTemplateDeploymentState) ElementType

Jump to

Keyboard shortcuts

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