core

package
v4.42.0 Latest Latest
Warning

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

Go to latest
Published: Mar 15, 2022 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

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

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 GetExtendedLocationsArgs added in v4.39.0

type GetExtendedLocationsArgs struct {
	// The Azure location to retrieve the Extended Locations for.
	Location string `pulumi:"location"`
}

A collection of arguments for invoking getExtendedLocations.

type GetExtendedLocationsOutputArgs added in v4.39.0

type GetExtendedLocationsOutputArgs struct {
	// The Azure location to retrieve the Extended Locations for.
	Location pulumi.StringInput `pulumi:"location"`
}

A collection of arguments for invoking getExtendedLocations.

func (GetExtendedLocationsOutputArgs) ElementType added in v4.39.0

type GetExtendedLocationsResult added in v4.39.0

type GetExtendedLocationsResult struct {
	// The available extended locations for the Azure Location.
	ExtendedLocations []string `pulumi:"extendedLocations"`
	// The provider-assigned unique ID for this managed resource.
	Id       string `pulumi:"id"`
	Location string `pulumi:"location"`
}

A collection of values returned by getExtendedLocations.

func GetExtendedLocations added in v4.39.0

func GetExtendedLocations(ctx *pulumi.Context, args *GetExtendedLocationsArgs, opts ...pulumi.InvokeOption) (*GetExtendedLocationsResult, error)

This data source return the available Extended Locations for a specific Azure Region.

## 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.GetExtendedLocations(ctx, &core.GetExtendedLocationsArgs{
			Location: "West Europe",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetExtendedLocationsResultOutput added in v4.39.0

type GetExtendedLocationsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getExtendedLocations.

func GetExtendedLocationsOutput added in v4.39.0

func (GetExtendedLocationsResultOutput) ElementType added in v4.39.0

func (GetExtendedLocationsResultOutput) ExtendedLocations added in v4.39.0

The available extended locations for the Azure Location.

func (GetExtendedLocationsResultOutput) Id added in v4.39.0

The provider-assigned unique ID for this managed resource.

func (GetExtendedLocationsResultOutput) Location added in v4.39.0

func (GetExtendedLocationsResultOutput) ToGetExtendedLocationsResultOutput added in v4.39.0

func (o GetExtendedLocationsResultOutput) ToGetExtendedLocationsResultOutput() GetExtendedLocationsResultOutput

func (GetExtendedLocationsResultOutput) ToGetExtendedLocationsResultOutputWithContext added in v4.39.0

func (o GetExtendedLocationsResultOutput) ToGetExtendedLocationsResultOutputWithContext(ctx context.Context) GetExtendedLocationsResultOutput

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 GetResourcesOutputArgs added in v4.20.0

type GetResourcesOutputArgs struct {
	// The name of the Resource.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// A mapping of tags which the resource has to have in order to be included in the result.
	RequiredTags pulumi.StringMapInput `pulumi:"requiredTags"`
	// The name of the Resource group where the Resources are located.
	ResourceGroupName pulumi.StringPtrInput `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 pulumi.StringPtrInput `pulumi:"type"`
}

A collection of arguments for invoking getResources.

func (GetResourcesOutputArgs) ElementType added in v4.20.0

func (GetResourcesOutputArgs) ElementType() reflect.Type

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 GetResourcesResultOutput added in v4.20.0

type GetResourcesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResources.

func GetResourcesOutput added in v4.20.0

func GetResourcesOutput(ctx *pulumi.Context, args GetResourcesOutputArgs, opts ...pulumi.InvokeOption) GetResourcesResultOutput

func (GetResourcesResultOutput) ElementType added in v4.20.0

func (GetResourcesResultOutput) ElementType() reflect.Type

func (GetResourcesResultOutput) Id added in v4.20.0

The provider-assigned unique ID for this managed resource.

func (GetResourcesResultOutput) Name added in v4.20.0

The name of this Resource.

func (GetResourcesResultOutput) RequiredTags added in v4.20.0

func (GetResourcesResultOutput) ResourceGroupName added in v4.20.0

func (o GetResourcesResultOutput) ResourceGroupName() pulumi.StringOutput

func (GetResourcesResultOutput) Resources added in v4.20.0

One or more `resource` blocks as defined below.

func (GetResourcesResultOutput) ToGetResourcesResultOutput added in v4.20.0

func (o GetResourcesResultOutput) ToGetResourcesResultOutput() GetResourcesResultOutput

func (GetResourcesResultOutput) ToGetResourcesResultOutputWithContext added in v4.20.0

func (o GetResourcesResultOutput) ToGetResourcesResultOutputWithContext(ctx context.Context) GetResourcesResultOutput

func (GetResourcesResultOutput) Type added in v4.20.0

The type of this Resource. (e.g. `Microsoft.Network/virtualNetworks`).

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 GetSubscriptionsOutputArgs added in v4.20.0

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

A collection of arguments for invoking getSubscriptions.

func (GetSubscriptionsOutputArgs) ElementType added in v4.20.0

func (GetSubscriptionsOutputArgs) ElementType() reflect.Type

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 GetSubscriptionsResultOutput added in v4.20.0

type GetSubscriptionsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSubscriptions.

func GetSubscriptionsOutput added in v4.20.0

func (GetSubscriptionsResultOutput) DisplayNameContains added in v4.20.0

func (o GetSubscriptionsResultOutput) DisplayNameContains() pulumi.StringPtrOutput

func (GetSubscriptionsResultOutput) DisplayNamePrefix added in v4.20.0

func (o GetSubscriptionsResultOutput) DisplayNamePrefix() pulumi.StringPtrOutput

func (GetSubscriptionsResultOutput) ElementType added in v4.20.0

func (GetSubscriptionsResultOutput) Id added in v4.20.0

The provider-assigned unique ID for this managed resource.

func (GetSubscriptionsResultOutput) Subscriptions added in v4.20.0

One or more `subscription` blocks as defined below.

func (GetSubscriptionsResultOutput) ToGetSubscriptionsResultOutput added in v4.20.0

func (o GetSubscriptionsResultOutput) ToGetSubscriptionsResultOutput() GetSubscriptionsResultOutput

func (GetSubscriptionsResultOutput) ToGetSubscriptionsResultOutputWithContext added in v4.20.0

func (o GetSubscriptionsResultOutput) ToGetSubscriptionsResultOutputWithContext(ctx context.Context) GetSubscriptionsResultOutput

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 GetTemplateSpecVersionOutputArgs added in v4.20.0

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

A collection of arguments for invoking getTemplateSpecVersion.

func (GetTemplateSpecVersionOutputArgs) ElementType added in v4.20.0

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 GetTemplateSpecVersionResultOutput added in v4.20.0

type GetTemplateSpecVersionResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getTemplateSpecVersion.

func GetTemplateSpecVersionOutput added in v4.20.0

func (GetTemplateSpecVersionResultOutput) ElementType added in v4.20.0

func (GetTemplateSpecVersionResultOutput) Id added in v4.20.0

The provider-assigned unique ID for this managed resource.

func (GetTemplateSpecVersionResultOutput) Name added in v4.20.0

func (GetTemplateSpecVersionResultOutput) ResourceGroupName added in v4.20.0

func (GetTemplateSpecVersionResultOutput) Tags added in v4.20.0

A mapping of tags assigned to the Template.

func (GetTemplateSpecVersionResultOutput) TemplateBody added in v4.20.0

The ARM Template body of the Template Spec Version.

func (GetTemplateSpecVersionResultOutput) ToGetTemplateSpecVersionResultOutput added in v4.20.0

func (o GetTemplateSpecVersionResultOutput) ToGetTemplateSpecVersionResultOutput() GetTemplateSpecVersionResultOutput

func (GetTemplateSpecVersionResultOutput) ToGetTemplateSpecVersionResultOutputWithContext added in v4.20.0

func (o GetTemplateSpecVersionResultOutput) ToGetTemplateSpecVersionResultOutputWithContext(ctx context.Context) GetTemplateSpecVersionResultOutput

func (GetTemplateSpecVersionResultOutput) Version added in v4.20.0

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 GetUserAssignedIdentityOutputArgs added in v4.20.0

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

A collection of arguments for invoking getUserAssignedIdentity.

func (GetUserAssignedIdentityOutputArgs) ElementType added in v4.20.0

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 GetUserAssignedIdentityResultOutput added in v4.20.0

type GetUserAssignedIdentityResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getUserAssignedIdentity.

func GetUserAssignedIdentityOutput added in v4.20.0

func (GetUserAssignedIdentityResultOutput) ClientId added in v4.20.0

The Client ID of the User Assigned Identity.

func (GetUserAssignedIdentityResultOutput) ElementType added in v4.20.0

func (GetUserAssignedIdentityResultOutput) Id added in v4.20.0

The provider-assigned unique ID for this managed resource.

func (GetUserAssignedIdentityResultOutput) Location added in v4.20.0

The Azure location where the User Assigned Identity exists.

func (GetUserAssignedIdentityResultOutput) Name added in v4.20.0

func (GetUserAssignedIdentityResultOutput) PrincipalId added in v4.20.0

The Service Principal ID of the User Assigned Identity.

func (GetUserAssignedIdentityResultOutput) ResourceGroupName added in v4.20.0

func (GetUserAssignedIdentityResultOutput) Tags added in v4.20.0

A mapping of tags assigned to the User Assigned Identity.

func (GetUserAssignedIdentityResultOutput) TenantId added in v4.20.0

The Tenant ID of the User Assigned Identity.

func (GetUserAssignedIdentityResultOutput) ToGetUserAssignedIdentityResultOutput added in v4.20.0

func (o GetUserAssignedIdentityResultOutput) ToGetUserAssignedIdentityResultOutput() GetUserAssignedIdentityResultOutput

func (GetUserAssignedIdentityResultOutput) ToGetUserAssignedIdentityResultOutputWithContext added in v4.20.0

func (o GetUserAssignedIdentityResultOutput) ToGetUserAssignedIdentityResultOutputWithContext(ctx context.Context) GetUserAssignedIdentityResultOutput

type LookupResourceGroupArgs

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

A collection of arguments for invoking getResourceGroup.

type LookupResourceGroupOutputArgs added in v4.20.0

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

A collection of arguments for invoking getResourceGroup.

func (LookupResourceGroupOutputArgs) ElementType added in v4.20.0

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 LookupResourceGroupResultOutput added in v4.20.0

type LookupResourceGroupResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResourceGroup.

func LookupResourceGroupOutput added in v4.20.0

func (LookupResourceGroupResultOutput) ElementType added in v4.20.0

func (LookupResourceGroupResultOutput) Id added in v4.20.0

The provider-assigned unique ID for this managed resource.

func (LookupResourceGroupResultOutput) Location added in v4.20.0

The Azure Region where the Resource Group exists.

func (LookupResourceGroupResultOutput) Name added in v4.20.0

func (LookupResourceGroupResultOutput) Tags added in v4.20.0

A mapping of tags assigned to the Resource Group.

func (LookupResourceGroupResultOutput) ToLookupResourceGroupResultOutput added in v4.20.0

func (o LookupResourceGroupResultOutput) ToLookupResourceGroupResultOutput() LookupResourceGroupResultOutput

func (LookupResourceGroupResultOutput) ToLookupResourceGroupResultOutputWithContext added in v4.20.0

func (o LookupResourceGroupResultOutput) ToLookupResourceGroupResultOutputWithContext(ctx context.Context) LookupResourceGroupResultOutput

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 LookupSubscriptionOutputArgs added in v4.20.0

type LookupSubscriptionOutputArgs 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 pulumi.StringPtrInput `pulumi:"subscriptionId"`
}

A collection of arguments for invoking getSubscription.

func (LookupSubscriptionOutputArgs) ElementType added in v4.20.0

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 LookupSubscriptionResultOutput added in v4.20.0

type LookupSubscriptionResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSubscription.

func LookupSubscriptionOutput added in v4.20.0

func (LookupSubscriptionResultOutput) DisplayName added in v4.20.0

The subscription display name.

func (LookupSubscriptionResultOutput) ElementType added in v4.20.0

func (LookupSubscriptionResultOutput) Id added in v4.20.0

The provider-assigned unique ID for this managed resource.

func (LookupSubscriptionResultOutput) LocationPlacementId added in v4.20.0

func (o LookupSubscriptionResultOutput) LocationPlacementId() pulumi.StringOutput

The subscription location placement ID.

func (LookupSubscriptionResultOutput) QuotaId added in v4.20.0

The subscription quota ID.

func (LookupSubscriptionResultOutput) SpendingLimit added in v4.20.0

The subscription spending limit.

func (LookupSubscriptionResultOutput) State added in v4.20.0

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

func (LookupSubscriptionResultOutput) SubscriptionId added in v4.20.0

The subscription GUID.

func (LookupSubscriptionResultOutput) Tags added in v4.20.0

A mapping of tags assigned to the Subscription.

func (LookupSubscriptionResultOutput) TenantId added in v4.20.0

The subscription tenant ID.

func (LookupSubscriptionResultOutput) ToLookupSubscriptionResultOutput added in v4.20.0

func (o LookupSubscriptionResultOutput) ToLookupSubscriptionResultOutput() LookupSubscriptionResultOutput

func (LookupSubscriptionResultOutput) ToLookupSubscriptionResultOutputWithContext added in v4.20.0

func (o LookupSubscriptionResultOutput) ToLookupSubscriptionResultOutputWithContext(ctx context.Context) LookupSubscriptionResultOutput

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

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

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"`
}

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

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 ResourceGroupCostManagementExport added in v4.28.0

type ResourceGroupCostManagementExport struct {
	pulumi.CustomResourceState

	// Is the cost management export active? Default is `true`.
	Active pulumi.BoolPtrOutput `pulumi:"active"`
	// A `exportDataOptions` block as defined below.
	ExportDataOptions ResourceGroupCostManagementExportExportDataOptionsOutput `pulumi:"exportDataOptions"`
	// A `exportDataStorageLocation` block as defined below.
	ExportDataStorageLocation ResourceGroupCostManagementExportExportDataStorageLocationOutput `pulumi:"exportDataStorageLocation"`
	// Specifies the name of the Cost Management Export. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The date the export will stop capturing information.
	RecurrencePeriodEndDate pulumi.StringOutput `pulumi:"recurrencePeriodEndDate"`
	// The date the export will start capturing information.
	RecurrencePeriodStartDate pulumi.StringOutput `pulumi:"recurrencePeriodStartDate"`
	// How often the requested information will be exported. Valid values include `Annually`, `Daily`, `Monthly`, `Weekly`.
	RecurrenceType pulumi.StringOutput `pulumi:"recurrenceType"`
	// The id of the resource group on which to create an export.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
}

Manages a Cost Management Export for a Resource Group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/storage"
"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 = storage.NewAccount(ctx, "exampleAccount", &storage.AccountArgs{
			ResourceGroupName:      exampleResourceGroup.Name,
			Location:               exampleResourceGroup.Location,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("LRS"),
		})
		if err != nil {
			return err
		}
		_, err = storage.NewContainer(ctx, "exampleContainer", &storage.ContainerArgs{
			StorageAccountName: pulumi.Any(azurerm_storage_account.Test.Name),
		})
		if err != nil {
			return err
		}
		_, err = core.NewResourceGroupCostManagementExport(ctx, "exampleResourceGroupCostManagementExport", &core.ResourceGroupCostManagementExportArgs{
			ResourceGroupId:           exampleResourceGroup.ID(),
			RecurrenceType:            pulumi.String("Monthly"),
			RecurrencePeriodStartDate: pulumi.String("2020-08-18T00:00:00Z"),
			RecurrencePeriodEndDate:   pulumi.String("2020-09-18T00:00:00Z"),
			ExportDataStorageLocation: &core.ResourceGroupCostManagementExportExportDataStorageLocationArgs{
				ContainerId:    pulumi.Any(azurerm_storage_container.Test.Resource_manager_id),
				RootFolderPath: pulumi.String("/root/updated"),
			},
			ExportDataOptions: &core.ResourceGroupCostManagementExportExportDataOptionsArgs{
				Type:      pulumi.String("Usage"),
				TimeFrame: pulumi.String("WeekToDate"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Cost Management Export for a Resource Group can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:core/resourceGroupCostManagementExport:ResourceGroupCostManagementExport example /subscriptions/12345678-1234-9876-4563-123456789012/resourceGroups/resGroup1/providers/Microsoft.CostManagement/exports/export1

```

func GetResourceGroupCostManagementExport added in v4.28.0

func GetResourceGroupCostManagementExport(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceGroupCostManagementExportState, opts ...pulumi.ResourceOption) (*ResourceGroupCostManagementExport, error)

GetResourceGroupCostManagementExport gets an existing ResourceGroupCostManagementExport 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 NewResourceGroupCostManagementExport added in v4.28.0

func NewResourceGroupCostManagementExport(ctx *pulumi.Context,
	name string, args *ResourceGroupCostManagementExportArgs, opts ...pulumi.ResourceOption) (*ResourceGroupCostManagementExport, error)

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

func (*ResourceGroupCostManagementExport) ElementType added in v4.28.0

func (*ResourceGroupCostManagementExport) ToResourceGroupCostManagementExportOutput added in v4.28.0

func (i *ResourceGroupCostManagementExport) ToResourceGroupCostManagementExportOutput() ResourceGroupCostManagementExportOutput

func (*ResourceGroupCostManagementExport) ToResourceGroupCostManagementExportOutputWithContext added in v4.28.0

func (i *ResourceGroupCostManagementExport) ToResourceGroupCostManagementExportOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportOutput

type ResourceGroupCostManagementExportArgs added in v4.28.0

type ResourceGroupCostManagementExportArgs struct {
	// Is the cost management export active? Default is `true`.
	Active pulumi.BoolPtrInput
	// A `exportDataOptions` block as defined below.
	ExportDataOptions ResourceGroupCostManagementExportExportDataOptionsInput
	// A `exportDataStorageLocation` block as defined below.
	ExportDataStorageLocation ResourceGroupCostManagementExportExportDataStorageLocationInput
	// Specifies the name of the Cost Management Export. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The date the export will stop capturing information.
	RecurrencePeriodEndDate pulumi.StringInput
	// The date the export will start capturing information.
	RecurrencePeriodStartDate pulumi.StringInput
	// How often the requested information will be exported. Valid values include `Annually`, `Daily`, `Monthly`, `Weekly`.
	RecurrenceType pulumi.StringInput
	// The id of the resource group on which to create an export.
	ResourceGroupId pulumi.StringInput
}

The set of arguments for constructing a ResourceGroupCostManagementExport resource.

func (ResourceGroupCostManagementExportArgs) ElementType added in v4.28.0

type ResourceGroupCostManagementExportArray added in v4.28.0

type ResourceGroupCostManagementExportArray []ResourceGroupCostManagementExportInput

func (ResourceGroupCostManagementExportArray) ElementType added in v4.28.0

func (ResourceGroupCostManagementExportArray) ToResourceGroupCostManagementExportArrayOutput added in v4.28.0

func (i ResourceGroupCostManagementExportArray) ToResourceGroupCostManagementExportArrayOutput() ResourceGroupCostManagementExportArrayOutput

func (ResourceGroupCostManagementExportArray) ToResourceGroupCostManagementExportArrayOutputWithContext added in v4.28.0

func (i ResourceGroupCostManagementExportArray) ToResourceGroupCostManagementExportArrayOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportArrayOutput

type ResourceGroupCostManagementExportArrayInput added in v4.28.0

type ResourceGroupCostManagementExportArrayInput interface {
	pulumi.Input

	ToResourceGroupCostManagementExportArrayOutput() ResourceGroupCostManagementExportArrayOutput
	ToResourceGroupCostManagementExportArrayOutputWithContext(context.Context) ResourceGroupCostManagementExportArrayOutput
}

ResourceGroupCostManagementExportArrayInput is an input type that accepts ResourceGroupCostManagementExportArray and ResourceGroupCostManagementExportArrayOutput values. You can construct a concrete instance of `ResourceGroupCostManagementExportArrayInput` via:

ResourceGroupCostManagementExportArray{ ResourceGroupCostManagementExportArgs{...} }

type ResourceGroupCostManagementExportArrayOutput added in v4.28.0

type ResourceGroupCostManagementExportArrayOutput struct{ *pulumi.OutputState }

func (ResourceGroupCostManagementExportArrayOutput) ElementType added in v4.28.0

func (ResourceGroupCostManagementExportArrayOutput) Index added in v4.28.0

func (ResourceGroupCostManagementExportArrayOutput) ToResourceGroupCostManagementExportArrayOutput added in v4.28.0

func (o ResourceGroupCostManagementExportArrayOutput) ToResourceGroupCostManagementExportArrayOutput() ResourceGroupCostManagementExportArrayOutput

func (ResourceGroupCostManagementExportArrayOutput) ToResourceGroupCostManagementExportArrayOutputWithContext added in v4.28.0

func (o ResourceGroupCostManagementExportArrayOutput) ToResourceGroupCostManagementExportArrayOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportArrayOutput

type ResourceGroupCostManagementExportExportDataOptions added in v4.28.0

type ResourceGroupCostManagementExportExportDataOptions struct {
	// The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: `WeekToDate`, `MonthToDate`, `BillingMonthToDate`, `TheLastWeek`, `TheLastMonth`, `TheLastBillingMonth`, `Custom`.
	TimeFrame string `pulumi:"timeFrame"`
	// The type of the query.
	Type string `pulumi:"type"`
}

type ResourceGroupCostManagementExportExportDataOptionsArgs added in v4.28.0

type ResourceGroupCostManagementExportExportDataOptionsArgs struct {
	// The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: `WeekToDate`, `MonthToDate`, `BillingMonthToDate`, `TheLastWeek`, `TheLastMonth`, `TheLastBillingMonth`, `Custom`.
	TimeFrame pulumi.StringInput `pulumi:"timeFrame"`
	// The type of the query.
	Type pulumi.StringInput `pulumi:"type"`
}

func (ResourceGroupCostManagementExportExportDataOptionsArgs) ElementType added in v4.28.0

func (ResourceGroupCostManagementExportExportDataOptionsArgs) ToResourceGroupCostManagementExportExportDataOptionsOutput added in v4.28.0

func (ResourceGroupCostManagementExportExportDataOptionsArgs) ToResourceGroupCostManagementExportExportDataOptionsOutputWithContext added in v4.28.0

func (i ResourceGroupCostManagementExportExportDataOptionsArgs) ToResourceGroupCostManagementExportExportDataOptionsOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportExportDataOptionsOutput

func (ResourceGroupCostManagementExportExportDataOptionsArgs) ToResourceGroupCostManagementExportExportDataOptionsPtrOutput added in v4.28.0

func (i ResourceGroupCostManagementExportExportDataOptionsArgs) ToResourceGroupCostManagementExportExportDataOptionsPtrOutput() ResourceGroupCostManagementExportExportDataOptionsPtrOutput

func (ResourceGroupCostManagementExportExportDataOptionsArgs) ToResourceGroupCostManagementExportExportDataOptionsPtrOutputWithContext added in v4.28.0

func (i ResourceGroupCostManagementExportExportDataOptionsArgs) ToResourceGroupCostManagementExportExportDataOptionsPtrOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportExportDataOptionsPtrOutput

type ResourceGroupCostManagementExportExportDataOptionsInput added in v4.28.0

type ResourceGroupCostManagementExportExportDataOptionsInput interface {
	pulumi.Input

	ToResourceGroupCostManagementExportExportDataOptionsOutput() ResourceGroupCostManagementExportExportDataOptionsOutput
	ToResourceGroupCostManagementExportExportDataOptionsOutputWithContext(context.Context) ResourceGroupCostManagementExportExportDataOptionsOutput
}

ResourceGroupCostManagementExportExportDataOptionsInput is an input type that accepts ResourceGroupCostManagementExportExportDataOptionsArgs and ResourceGroupCostManagementExportExportDataOptionsOutput values. You can construct a concrete instance of `ResourceGroupCostManagementExportExportDataOptionsInput` via:

ResourceGroupCostManagementExportExportDataOptionsArgs{...}

type ResourceGroupCostManagementExportExportDataOptionsOutput added in v4.28.0

type ResourceGroupCostManagementExportExportDataOptionsOutput struct{ *pulumi.OutputState }

func (ResourceGroupCostManagementExportExportDataOptionsOutput) ElementType added in v4.28.0

func (ResourceGroupCostManagementExportExportDataOptionsOutput) TimeFrame added in v4.28.0

The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: `WeekToDate`, `MonthToDate`, `BillingMonthToDate`, `TheLastWeek`, `TheLastMonth`, `TheLastBillingMonth`, `Custom`.

func (ResourceGroupCostManagementExportExportDataOptionsOutput) ToResourceGroupCostManagementExportExportDataOptionsOutput added in v4.28.0

func (ResourceGroupCostManagementExportExportDataOptionsOutput) ToResourceGroupCostManagementExportExportDataOptionsOutputWithContext added in v4.28.0

func (o ResourceGroupCostManagementExportExportDataOptionsOutput) ToResourceGroupCostManagementExportExportDataOptionsOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportExportDataOptionsOutput

func (ResourceGroupCostManagementExportExportDataOptionsOutput) ToResourceGroupCostManagementExportExportDataOptionsPtrOutput added in v4.28.0

func (ResourceGroupCostManagementExportExportDataOptionsOutput) ToResourceGroupCostManagementExportExportDataOptionsPtrOutputWithContext added in v4.28.0

func (o ResourceGroupCostManagementExportExportDataOptionsOutput) ToResourceGroupCostManagementExportExportDataOptionsPtrOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportExportDataOptionsPtrOutput

func (ResourceGroupCostManagementExportExportDataOptionsOutput) Type added in v4.28.0

The type of the query.

type ResourceGroupCostManagementExportExportDataOptionsPtrInput added in v4.28.0

type ResourceGroupCostManagementExportExportDataOptionsPtrInput interface {
	pulumi.Input

	ToResourceGroupCostManagementExportExportDataOptionsPtrOutput() ResourceGroupCostManagementExportExportDataOptionsPtrOutput
	ToResourceGroupCostManagementExportExportDataOptionsPtrOutputWithContext(context.Context) ResourceGroupCostManagementExportExportDataOptionsPtrOutput
}

ResourceGroupCostManagementExportExportDataOptionsPtrInput is an input type that accepts ResourceGroupCostManagementExportExportDataOptionsArgs, ResourceGroupCostManagementExportExportDataOptionsPtr and ResourceGroupCostManagementExportExportDataOptionsPtrOutput values. You can construct a concrete instance of `ResourceGroupCostManagementExportExportDataOptionsPtrInput` via:

        ResourceGroupCostManagementExportExportDataOptionsArgs{...}

or:

        nil

type ResourceGroupCostManagementExportExportDataOptionsPtrOutput added in v4.28.0

type ResourceGroupCostManagementExportExportDataOptionsPtrOutput struct{ *pulumi.OutputState }

func (ResourceGroupCostManagementExportExportDataOptionsPtrOutput) Elem added in v4.28.0

func (ResourceGroupCostManagementExportExportDataOptionsPtrOutput) ElementType added in v4.28.0

func (ResourceGroupCostManagementExportExportDataOptionsPtrOutput) TimeFrame added in v4.28.0

The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: `WeekToDate`, `MonthToDate`, `BillingMonthToDate`, `TheLastWeek`, `TheLastMonth`, `TheLastBillingMonth`, `Custom`.

func (ResourceGroupCostManagementExportExportDataOptionsPtrOutput) ToResourceGroupCostManagementExportExportDataOptionsPtrOutput added in v4.28.0

func (ResourceGroupCostManagementExportExportDataOptionsPtrOutput) ToResourceGroupCostManagementExportExportDataOptionsPtrOutputWithContext added in v4.28.0

func (o ResourceGroupCostManagementExportExportDataOptionsPtrOutput) ToResourceGroupCostManagementExportExportDataOptionsPtrOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportExportDataOptionsPtrOutput

func (ResourceGroupCostManagementExportExportDataOptionsPtrOutput) Type added in v4.28.0

The type of the query.

type ResourceGroupCostManagementExportExportDataStorageLocation added in v4.28.0

type ResourceGroupCostManagementExportExportDataStorageLocation struct {
	// The Resource Manager ID of the container where exports will be uploaded.
	ContainerId string `pulumi:"containerId"`
	// The path of the directory where exports will be uploaded.
	RootFolderPath string `pulumi:"rootFolderPath"`
}

type ResourceGroupCostManagementExportExportDataStorageLocationArgs added in v4.28.0

type ResourceGroupCostManagementExportExportDataStorageLocationArgs struct {
	// The Resource Manager ID of the container where exports will be uploaded.
	ContainerId pulumi.StringInput `pulumi:"containerId"`
	// The path of the directory where exports will be uploaded.
	RootFolderPath pulumi.StringInput `pulumi:"rootFolderPath"`
}

func (ResourceGroupCostManagementExportExportDataStorageLocationArgs) ElementType added in v4.28.0

func (ResourceGroupCostManagementExportExportDataStorageLocationArgs) ToResourceGroupCostManagementExportExportDataStorageLocationOutput added in v4.28.0

func (ResourceGroupCostManagementExportExportDataStorageLocationArgs) ToResourceGroupCostManagementExportExportDataStorageLocationOutputWithContext added in v4.28.0

func (i ResourceGroupCostManagementExportExportDataStorageLocationArgs) ToResourceGroupCostManagementExportExportDataStorageLocationOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportExportDataStorageLocationOutput

func (ResourceGroupCostManagementExportExportDataStorageLocationArgs) ToResourceGroupCostManagementExportExportDataStorageLocationPtrOutput added in v4.28.0

func (ResourceGroupCostManagementExportExportDataStorageLocationArgs) ToResourceGroupCostManagementExportExportDataStorageLocationPtrOutputWithContext added in v4.28.0

func (i ResourceGroupCostManagementExportExportDataStorageLocationArgs) ToResourceGroupCostManagementExportExportDataStorageLocationPtrOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput

type ResourceGroupCostManagementExportExportDataStorageLocationInput added in v4.28.0

type ResourceGroupCostManagementExportExportDataStorageLocationInput interface {
	pulumi.Input

	ToResourceGroupCostManagementExportExportDataStorageLocationOutput() ResourceGroupCostManagementExportExportDataStorageLocationOutput
	ToResourceGroupCostManagementExportExportDataStorageLocationOutputWithContext(context.Context) ResourceGroupCostManagementExportExportDataStorageLocationOutput
}

ResourceGroupCostManagementExportExportDataStorageLocationInput is an input type that accepts ResourceGroupCostManagementExportExportDataStorageLocationArgs and ResourceGroupCostManagementExportExportDataStorageLocationOutput values. You can construct a concrete instance of `ResourceGroupCostManagementExportExportDataStorageLocationInput` via:

ResourceGroupCostManagementExportExportDataStorageLocationArgs{...}

type ResourceGroupCostManagementExportExportDataStorageLocationOutput added in v4.28.0

type ResourceGroupCostManagementExportExportDataStorageLocationOutput struct{ *pulumi.OutputState }

func (ResourceGroupCostManagementExportExportDataStorageLocationOutput) ContainerId added in v4.28.0

The Resource Manager ID of the container where exports will be uploaded.

func (ResourceGroupCostManagementExportExportDataStorageLocationOutput) ElementType added in v4.28.0

func (ResourceGroupCostManagementExportExportDataStorageLocationOutput) RootFolderPath added in v4.28.0

The path of the directory where exports will be uploaded.

func (ResourceGroupCostManagementExportExportDataStorageLocationOutput) ToResourceGroupCostManagementExportExportDataStorageLocationOutput added in v4.28.0

func (ResourceGroupCostManagementExportExportDataStorageLocationOutput) ToResourceGroupCostManagementExportExportDataStorageLocationOutputWithContext added in v4.28.0

func (o ResourceGroupCostManagementExportExportDataStorageLocationOutput) ToResourceGroupCostManagementExportExportDataStorageLocationOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportExportDataStorageLocationOutput

func (ResourceGroupCostManagementExportExportDataStorageLocationOutput) ToResourceGroupCostManagementExportExportDataStorageLocationPtrOutput added in v4.28.0

func (ResourceGroupCostManagementExportExportDataStorageLocationOutput) ToResourceGroupCostManagementExportExportDataStorageLocationPtrOutputWithContext added in v4.28.0

func (o ResourceGroupCostManagementExportExportDataStorageLocationOutput) ToResourceGroupCostManagementExportExportDataStorageLocationPtrOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput

type ResourceGroupCostManagementExportExportDataStorageLocationPtrInput added in v4.28.0

type ResourceGroupCostManagementExportExportDataStorageLocationPtrInput interface {
	pulumi.Input

	ToResourceGroupCostManagementExportExportDataStorageLocationPtrOutput() ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput
	ToResourceGroupCostManagementExportExportDataStorageLocationPtrOutputWithContext(context.Context) ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput
}

ResourceGroupCostManagementExportExportDataStorageLocationPtrInput is an input type that accepts ResourceGroupCostManagementExportExportDataStorageLocationArgs, ResourceGroupCostManagementExportExportDataStorageLocationPtr and ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput values. You can construct a concrete instance of `ResourceGroupCostManagementExportExportDataStorageLocationPtrInput` via:

        ResourceGroupCostManagementExportExportDataStorageLocationArgs{...}

or:

        nil

type ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput added in v4.28.0

type ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput struct{ *pulumi.OutputState }

func (ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput) ContainerId added in v4.28.0

The Resource Manager ID of the container where exports will be uploaded.

func (ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput) Elem added in v4.28.0

func (ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput) ElementType added in v4.28.0

func (ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput) RootFolderPath added in v4.28.0

The path of the directory where exports will be uploaded.

func (ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput) ToResourceGroupCostManagementExportExportDataStorageLocationPtrOutput added in v4.28.0

func (ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput) ToResourceGroupCostManagementExportExportDataStorageLocationPtrOutputWithContext added in v4.28.0

func (o ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput) ToResourceGroupCostManagementExportExportDataStorageLocationPtrOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportExportDataStorageLocationPtrOutput

type ResourceGroupCostManagementExportInput added in v4.28.0

type ResourceGroupCostManagementExportInput interface {
	pulumi.Input

	ToResourceGroupCostManagementExportOutput() ResourceGroupCostManagementExportOutput
	ToResourceGroupCostManagementExportOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportOutput
}

type ResourceGroupCostManagementExportMap added in v4.28.0

type ResourceGroupCostManagementExportMap map[string]ResourceGroupCostManagementExportInput

func (ResourceGroupCostManagementExportMap) ElementType added in v4.28.0

func (ResourceGroupCostManagementExportMap) ToResourceGroupCostManagementExportMapOutput added in v4.28.0

func (i ResourceGroupCostManagementExportMap) ToResourceGroupCostManagementExportMapOutput() ResourceGroupCostManagementExportMapOutput

func (ResourceGroupCostManagementExportMap) ToResourceGroupCostManagementExportMapOutputWithContext added in v4.28.0

func (i ResourceGroupCostManagementExportMap) ToResourceGroupCostManagementExportMapOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportMapOutput

type ResourceGroupCostManagementExportMapInput added in v4.28.0

type ResourceGroupCostManagementExportMapInput interface {
	pulumi.Input

	ToResourceGroupCostManagementExportMapOutput() ResourceGroupCostManagementExportMapOutput
	ToResourceGroupCostManagementExportMapOutputWithContext(context.Context) ResourceGroupCostManagementExportMapOutput
}

ResourceGroupCostManagementExportMapInput is an input type that accepts ResourceGroupCostManagementExportMap and ResourceGroupCostManagementExportMapOutput values. You can construct a concrete instance of `ResourceGroupCostManagementExportMapInput` via:

ResourceGroupCostManagementExportMap{ "key": ResourceGroupCostManagementExportArgs{...} }

type ResourceGroupCostManagementExportMapOutput added in v4.28.0

type ResourceGroupCostManagementExportMapOutput struct{ *pulumi.OutputState }

func (ResourceGroupCostManagementExportMapOutput) ElementType added in v4.28.0

func (ResourceGroupCostManagementExportMapOutput) MapIndex added in v4.28.0

func (ResourceGroupCostManagementExportMapOutput) ToResourceGroupCostManagementExportMapOutput added in v4.28.0

func (o ResourceGroupCostManagementExportMapOutput) ToResourceGroupCostManagementExportMapOutput() ResourceGroupCostManagementExportMapOutput

func (ResourceGroupCostManagementExportMapOutput) ToResourceGroupCostManagementExportMapOutputWithContext added in v4.28.0

func (o ResourceGroupCostManagementExportMapOutput) ToResourceGroupCostManagementExportMapOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportMapOutput

type ResourceGroupCostManagementExportOutput added in v4.28.0

type ResourceGroupCostManagementExportOutput struct{ *pulumi.OutputState }

func (ResourceGroupCostManagementExportOutput) ElementType added in v4.28.0

func (ResourceGroupCostManagementExportOutput) ToResourceGroupCostManagementExportOutput added in v4.28.0

func (o ResourceGroupCostManagementExportOutput) ToResourceGroupCostManagementExportOutput() ResourceGroupCostManagementExportOutput

func (ResourceGroupCostManagementExportOutput) ToResourceGroupCostManagementExportOutputWithContext added in v4.28.0

func (o ResourceGroupCostManagementExportOutput) ToResourceGroupCostManagementExportOutputWithContext(ctx context.Context) ResourceGroupCostManagementExportOutput

type ResourceGroupCostManagementExportState added in v4.28.0

type ResourceGroupCostManagementExportState struct {
	// Is the cost management export active? Default is `true`.
	Active pulumi.BoolPtrInput
	// A `exportDataOptions` block as defined below.
	ExportDataOptions ResourceGroupCostManagementExportExportDataOptionsPtrInput
	// A `exportDataStorageLocation` block as defined below.
	ExportDataStorageLocation ResourceGroupCostManagementExportExportDataStorageLocationPtrInput
	// Specifies the name of the Cost Management Export. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The date the export will stop capturing information.
	RecurrencePeriodEndDate pulumi.StringPtrInput
	// The date the export will start capturing information.
	RecurrencePeriodStartDate pulumi.StringPtrInput
	// How often the requested information will be exported. Valid values include `Annually`, `Daily`, `Monthly`, `Weekly`.
	RecurrenceType pulumi.StringPtrInput
	// The id of the resource group on which to create an export.
	ResourceGroupId pulumi.StringPtrInput
}

func (ResourceGroupCostManagementExportState) ElementType added in v4.28.0

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

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"`
	// An `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"`
	// One or more `nonComplianceMessage` blocks as defined below.
	NonComplianceMessages ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput `pulumi:"nonComplianceMessages"`
	// Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
	NotScopes pulumi.StringArrayOutput `pulumi:"notScopes"`
	// A JSON mapping of any Parameters for this Policy.
	Parameters pulumi.StringPtrOutput `pulumi:"parameters"`
	// The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
	PolicyDefinitionId pulumi.StringOutput `pulumi:"policyDefinitionId"`
	// 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
		}
		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.NewResourceGroupPolicyAssignment(ctx, "exampleResourceGroupPolicyAssignment", &core.ResourceGroupPolicyAssignmentArgs{
			ResourceGroupId:    exampleResourceGroup.ID(),
			PolicyDefinitionId: exampleDefinition.ID(),
			Parameters:         pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v", "    {\n", "      \"tagName\": {\n", "        \"value\": \"Business Unit\"\n", "      },\n", "      \"tagValue\": {\n", "        \"value\": \"BU\"\n", "      }\n", "    }\n")),
		})
		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

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
	// An `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
	// One or more `nonComplianceMessage` blocks as defined below.
	NonComplianceMessages ResourceGroupPolicyAssignmentNonComplianceMessageArrayInput
	// Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
	NotScopes pulumi.StringArrayInput
	// A JSON mapping of any Parameters for this Policy.
	Parameters pulumi.StringPtrInput
	// The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
	PolicyDefinitionId pulumi.StringInput
	// The 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.StringInput `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 ResourceGroupPolicyAssignmentNonComplianceMessage added in v4.32.0

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

type ResourceGroupPolicyAssignmentNonComplianceMessageArgs added in v4.32.0

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

func (ResourceGroupPolicyAssignmentNonComplianceMessageArgs) ElementType added in v4.32.0

func (ResourceGroupPolicyAssignmentNonComplianceMessageArgs) ToResourceGroupPolicyAssignmentNonComplianceMessageOutput added in v4.32.0

func (i ResourceGroupPolicyAssignmentNonComplianceMessageArgs) ToResourceGroupPolicyAssignmentNonComplianceMessageOutput() ResourceGroupPolicyAssignmentNonComplianceMessageOutput

func (ResourceGroupPolicyAssignmentNonComplianceMessageArgs) ToResourceGroupPolicyAssignmentNonComplianceMessageOutputWithContext added in v4.32.0

func (i ResourceGroupPolicyAssignmentNonComplianceMessageArgs) ToResourceGroupPolicyAssignmentNonComplianceMessageOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentNonComplianceMessageOutput

type ResourceGroupPolicyAssignmentNonComplianceMessageArray added in v4.32.0

type ResourceGroupPolicyAssignmentNonComplianceMessageArray []ResourceGroupPolicyAssignmentNonComplianceMessageInput

func (ResourceGroupPolicyAssignmentNonComplianceMessageArray) ElementType added in v4.32.0

func (ResourceGroupPolicyAssignmentNonComplianceMessageArray) ToResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput added in v4.32.0

func (i ResourceGroupPolicyAssignmentNonComplianceMessageArray) ToResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput() ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput

func (ResourceGroupPolicyAssignmentNonComplianceMessageArray) ToResourceGroupPolicyAssignmentNonComplianceMessageArrayOutputWithContext added in v4.32.0

func (i ResourceGroupPolicyAssignmentNonComplianceMessageArray) ToResourceGroupPolicyAssignmentNonComplianceMessageArrayOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput

type ResourceGroupPolicyAssignmentNonComplianceMessageArrayInput added in v4.32.0

type ResourceGroupPolicyAssignmentNonComplianceMessageArrayInput interface {
	pulumi.Input

	ToResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput() ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput
	ToResourceGroupPolicyAssignmentNonComplianceMessageArrayOutputWithContext(context.Context) ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput
}

ResourceGroupPolicyAssignmentNonComplianceMessageArrayInput is an input type that accepts ResourceGroupPolicyAssignmentNonComplianceMessageArray and ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput values. You can construct a concrete instance of `ResourceGroupPolicyAssignmentNonComplianceMessageArrayInput` via:

ResourceGroupPolicyAssignmentNonComplianceMessageArray{ ResourceGroupPolicyAssignmentNonComplianceMessageArgs{...} }

type ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput added in v4.32.0

type ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput struct{ *pulumi.OutputState }

func (ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput) ElementType added in v4.32.0

func (ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput) Index added in v4.32.0

func (ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput) ToResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput added in v4.32.0

func (ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput) ToResourceGroupPolicyAssignmentNonComplianceMessageArrayOutputWithContext added in v4.32.0

func (o ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput) ToResourceGroupPolicyAssignmentNonComplianceMessageArrayOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentNonComplianceMessageArrayOutput

type ResourceGroupPolicyAssignmentNonComplianceMessageInput added in v4.32.0

type ResourceGroupPolicyAssignmentNonComplianceMessageInput interface {
	pulumi.Input

	ToResourceGroupPolicyAssignmentNonComplianceMessageOutput() ResourceGroupPolicyAssignmentNonComplianceMessageOutput
	ToResourceGroupPolicyAssignmentNonComplianceMessageOutputWithContext(context.Context) ResourceGroupPolicyAssignmentNonComplianceMessageOutput
}

ResourceGroupPolicyAssignmentNonComplianceMessageInput is an input type that accepts ResourceGroupPolicyAssignmentNonComplianceMessageArgs and ResourceGroupPolicyAssignmentNonComplianceMessageOutput values. You can construct a concrete instance of `ResourceGroupPolicyAssignmentNonComplianceMessageInput` via:

ResourceGroupPolicyAssignmentNonComplianceMessageArgs{...}

type ResourceGroupPolicyAssignmentNonComplianceMessageOutput added in v4.32.0

type ResourceGroupPolicyAssignmentNonComplianceMessageOutput struct{ *pulumi.OutputState }

func (ResourceGroupPolicyAssignmentNonComplianceMessageOutput) Content added in v4.32.0

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

func (ResourceGroupPolicyAssignmentNonComplianceMessageOutput) ElementType added in v4.32.0

func (ResourceGroupPolicyAssignmentNonComplianceMessageOutput) PolicyDefinitionReferenceId added in v4.32.0

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

func (ResourceGroupPolicyAssignmentNonComplianceMessageOutput) ToResourceGroupPolicyAssignmentNonComplianceMessageOutput added in v4.32.0

func (ResourceGroupPolicyAssignmentNonComplianceMessageOutput) ToResourceGroupPolicyAssignmentNonComplianceMessageOutputWithContext added in v4.32.0

func (o ResourceGroupPolicyAssignmentNonComplianceMessageOutput) ToResourceGroupPolicyAssignmentNonComplianceMessageOutputWithContext(ctx context.Context) ResourceGroupPolicyAssignmentNonComplianceMessageOutput

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

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
	// An `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
	// One or more `nonComplianceMessage` blocks as defined below.
	NonComplianceMessages ResourceGroupPolicyAssignmentNonComplianceMessageArrayInput
	// Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
	NotScopes pulumi.StringArrayInput
	// A JSON mapping of any Parameters for this Policy.
	Parameters pulumi.StringPtrInput
	// The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
	PolicyDefinitionId pulumi.StringPtrInput
	// 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 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. This behavior can be disabled in the provider `features` block by setting the `deleteNestedItemsDuringDeletion` field to `false` within the `templateDeployment` block.

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

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

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"`
	// An `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"`
	// One or more `nonComplianceMessage` blocks as defined below.
	NonComplianceMessages ResourcePolicyAssignmentNonComplianceMessageArrayOutput `pulumi:"nonComplianceMessages"`
	// Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
	NotScopes pulumi.StringArrayOutput `pulumi:"notScopes"`
	// A JSON mapping of any Parameters for this Policy.
	Parameters pulumi.StringPtrOutput `pulumi:"parameters"`
	// The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
	PolicyDefinitionId pulumi.StringOutput `pulumi:"policyDefinitionId"`
	// 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

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
	// An `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
	// One or more `nonComplianceMessage` blocks as defined below.
	NonComplianceMessages ResourcePolicyAssignmentNonComplianceMessageArrayInput
	// Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
	NotScopes pulumi.StringArrayInput
	// A JSON mapping of any Parameters for this Policy.
	Parameters pulumi.StringPtrInput
	// The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
	PolicyDefinitionId pulumi.StringInput
	// The 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.StringInput `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 ResourcePolicyAssignmentNonComplianceMessage added in v4.32.0

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

type ResourcePolicyAssignmentNonComplianceMessageArgs added in v4.32.0

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

func (ResourcePolicyAssignmentNonComplianceMessageArgs) ElementType added in v4.32.0

func (ResourcePolicyAssignmentNonComplianceMessageArgs) ToResourcePolicyAssignmentNonComplianceMessageOutput added in v4.32.0

func (i ResourcePolicyAssignmentNonComplianceMessageArgs) ToResourcePolicyAssignmentNonComplianceMessageOutput() ResourcePolicyAssignmentNonComplianceMessageOutput

func (ResourcePolicyAssignmentNonComplianceMessageArgs) ToResourcePolicyAssignmentNonComplianceMessageOutputWithContext added in v4.32.0

func (i ResourcePolicyAssignmentNonComplianceMessageArgs) ToResourcePolicyAssignmentNonComplianceMessageOutputWithContext(ctx context.Context) ResourcePolicyAssignmentNonComplianceMessageOutput

type ResourcePolicyAssignmentNonComplianceMessageArray added in v4.32.0

type ResourcePolicyAssignmentNonComplianceMessageArray []ResourcePolicyAssignmentNonComplianceMessageInput

func (ResourcePolicyAssignmentNonComplianceMessageArray) ElementType added in v4.32.0

func (ResourcePolicyAssignmentNonComplianceMessageArray) ToResourcePolicyAssignmentNonComplianceMessageArrayOutput added in v4.32.0

func (i ResourcePolicyAssignmentNonComplianceMessageArray) ToResourcePolicyAssignmentNonComplianceMessageArrayOutput() ResourcePolicyAssignmentNonComplianceMessageArrayOutput

func (ResourcePolicyAssignmentNonComplianceMessageArray) ToResourcePolicyAssignmentNonComplianceMessageArrayOutputWithContext added in v4.32.0

func (i ResourcePolicyAssignmentNonComplianceMessageArray) ToResourcePolicyAssignmentNonComplianceMessageArrayOutputWithContext(ctx context.Context) ResourcePolicyAssignmentNonComplianceMessageArrayOutput

type ResourcePolicyAssignmentNonComplianceMessageArrayInput added in v4.32.0

type ResourcePolicyAssignmentNonComplianceMessageArrayInput interface {
	pulumi.Input

	ToResourcePolicyAssignmentNonComplianceMessageArrayOutput() ResourcePolicyAssignmentNonComplianceMessageArrayOutput
	ToResourcePolicyAssignmentNonComplianceMessageArrayOutputWithContext(context.Context) ResourcePolicyAssignmentNonComplianceMessageArrayOutput
}

ResourcePolicyAssignmentNonComplianceMessageArrayInput is an input type that accepts ResourcePolicyAssignmentNonComplianceMessageArray and ResourcePolicyAssignmentNonComplianceMessageArrayOutput values. You can construct a concrete instance of `ResourcePolicyAssignmentNonComplianceMessageArrayInput` via:

ResourcePolicyAssignmentNonComplianceMessageArray{ ResourcePolicyAssignmentNonComplianceMessageArgs{...} }

type ResourcePolicyAssignmentNonComplianceMessageArrayOutput added in v4.32.0

type ResourcePolicyAssignmentNonComplianceMessageArrayOutput struct{ *pulumi.OutputState }

func (ResourcePolicyAssignmentNonComplianceMessageArrayOutput) ElementType added in v4.32.0

func (ResourcePolicyAssignmentNonComplianceMessageArrayOutput) Index added in v4.32.0

func (ResourcePolicyAssignmentNonComplianceMessageArrayOutput) ToResourcePolicyAssignmentNonComplianceMessageArrayOutput added in v4.32.0

func (ResourcePolicyAssignmentNonComplianceMessageArrayOutput) ToResourcePolicyAssignmentNonComplianceMessageArrayOutputWithContext added in v4.32.0

func (o ResourcePolicyAssignmentNonComplianceMessageArrayOutput) ToResourcePolicyAssignmentNonComplianceMessageArrayOutputWithContext(ctx context.Context) ResourcePolicyAssignmentNonComplianceMessageArrayOutput

type ResourcePolicyAssignmentNonComplianceMessageInput added in v4.32.0

type ResourcePolicyAssignmentNonComplianceMessageInput interface {
	pulumi.Input

	ToResourcePolicyAssignmentNonComplianceMessageOutput() ResourcePolicyAssignmentNonComplianceMessageOutput
	ToResourcePolicyAssignmentNonComplianceMessageOutputWithContext(context.Context) ResourcePolicyAssignmentNonComplianceMessageOutput
}

ResourcePolicyAssignmentNonComplianceMessageInput is an input type that accepts ResourcePolicyAssignmentNonComplianceMessageArgs and ResourcePolicyAssignmentNonComplianceMessageOutput values. You can construct a concrete instance of `ResourcePolicyAssignmentNonComplianceMessageInput` via:

ResourcePolicyAssignmentNonComplianceMessageArgs{...}

type ResourcePolicyAssignmentNonComplianceMessageOutput added in v4.32.0

type ResourcePolicyAssignmentNonComplianceMessageOutput struct{ *pulumi.OutputState }

func (ResourcePolicyAssignmentNonComplianceMessageOutput) Content added in v4.32.0

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

func (ResourcePolicyAssignmentNonComplianceMessageOutput) ElementType added in v4.32.0

func (ResourcePolicyAssignmentNonComplianceMessageOutput) PolicyDefinitionReferenceId added in v4.32.0

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

func (ResourcePolicyAssignmentNonComplianceMessageOutput) ToResourcePolicyAssignmentNonComplianceMessageOutput added in v4.32.0

func (o ResourcePolicyAssignmentNonComplianceMessageOutput) ToResourcePolicyAssignmentNonComplianceMessageOutput() ResourcePolicyAssignmentNonComplianceMessageOutput

func (ResourcePolicyAssignmentNonComplianceMessageOutput) ToResourcePolicyAssignmentNonComplianceMessageOutputWithContext added in v4.32.0

func (o ResourcePolicyAssignmentNonComplianceMessageOutput) ToResourcePolicyAssignmentNonComplianceMessageOutputWithContext(ctx context.Context) ResourcePolicyAssignmentNonComplianceMessageOutput

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

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
	// An `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
	// One or more `nonComplianceMessage` blocks as defined below.
	NonComplianceMessages ResourcePolicyAssignmentNonComplianceMessageArrayInput
	// Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
	NotScopes pulumi.StringArrayInput
	// A JSON mapping of any Parameters for this Policy.
	Parameters pulumi.StringPtrInput
	// The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
	PolicyDefinitionId pulumi.StringPtrInput
	// 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

	// A list of `feature` blocks as defined below.
	Features ResourceProviderRegistrationFeatureArrayOutput `pulumi:"features"`
	// 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**.

> **Note:** Adding or Removing a Preview Feature will re-register the Resource 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 {
		_, err := core.NewResourceProviderRegistration(ctx, "example", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Registering A Preview Feature)

```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", &core.ResourceProviderRegistrationArgs{
			Features: core.ResourceProviderRegistrationFeatureArray{
				&core.ResourceProviderRegistrationFeatureArgs{
					Name:       pulumi.String("AKS-DataPlaneAutoApprove"),
					Registered: pulumi.Bool(true),
				},
			},
		})
		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

type ResourceProviderRegistrationArgs

type ResourceProviderRegistrationArgs struct {
	// A list of `feature` blocks as defined below.
	Features ResourceProviderRegistrationFeatureArrayInput
	// 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 ResourceProviderRegistrationFeature added in v4.28.0

type ResourceProviderRegistrationFeature struct {
	// Specifies the name of the feature to register.
	Name string `pulumi:"name"`
	// Should this feature be Registered or Unregistered?
	Registered bool `pulumi:"registered"`
}

type ResourceProviderRegistrationFeatureArgs added in v4.28.0

type ResourceProviderRegistrationFeatureArgs struct {
	// Specifies the name of the feature to register.
	Name pulumi.StringInput `pulumi:"name"`
	// Should this feature be Registered or Unregistered?
	Registered pulumi.BoolInput `pulumi:"registered"`
}

func (ResourceProviderRegistrationFeatureArgs) ElementType added in v4.28.0

func (ResourceProviderRegistrationFeatureArgs) ToResourceProviderRegistrationFeatureOutput added in v4.28.0

func (i ResourceProviderRegistrationFeatureArgs) ToResourceProviderRegistrationFeatureOutput() ResourceProviderRegistrationFeatureOutput

func (ResourceProviderRegistrationFeatureArgs) ToResourceProviderRegistrationFeatureOutputWithContext added in v4.28.0

func (i ResourceProviderRegistrationFeatureArgs) ToResourceProviderRegistrationFeatureOutputWithContext(ctx context.Context) ResourceProviderRegistrationFeatureOutput

type ResourceProviderRegistrationFeatureArray added in v4.28.0

type ResourceProviderRegistrationFeatureArray []ResourceProviderRegistrationFeatureInput

func (ResourceProviderRegistrationFeatureArray) ElementType added in v4.28.0

func (ResourceProviderRegistrationFeatureArray) ToResourceProviderRegistrationFeatureArrayOutput added in v4.28.0

func (i ResourceProviderRegistrationFeatureArray) ToResourceProviderRegistrationFeatureArrayOutput() ResourceProviderRegistrationFeatureArrayOutput

func (ResourceProviderRegistrationFeatureArray) ToResourceProviderRegistrationFeatureArrayOutputWithContext added in v4.28.0

func (i ResourceProviderRegistrationFeatureArray) ToResourceProviderRegistrationFeatureArrayOutputWithContext(ctx context.Context) ResourceProviderRegistrationFeatureArrayOutput

type ResourceProviderRegistrationFeatureArrayInput added in v4.28.0

type ResourceProviderRegistrationFeatureArrayInput interface {
	pulumi.Input

	ToResourceProviderRegistrationFeatureArrayOutput() ResourceProviderRegistrationFeatureArrayOutput
	ToResourceProviderRegistrationFeatureArrayOutputWithContext(context.Context) ResourceProviderRegistrationFeatureArrayOutput
}

ResourceProviderRegistrationFeatureArrayInput is an input type that accepts ResourceProviderRegistrationFeatureArray and ResourceProviderRegistrationFeatureArrayOutput values. You can construct a concrete instance of `ResourceProviderRegistrationFeatureArrayInput` via:

ResourceProviderRegistrationFeatureArray{ ResourceProviderRegistrationFeatureArgs{...} }

type ResourceProviderRegistrationFeatureArrayOutput added in v4.28.0

type ResourceProviderRegistrationFeatureArrayOutput struct{ *pulumi.OutputState }

func (ResourceProviderRegistrationFeatureArrayOutput) ElementType added in v4.28.0

func (ResourceProviderRegistrationFeatureArrayOutput) Index added in v4.28.0

func (ResourceProviderRegistrationFeatureArrayOutput) ToResourceProviderRegistrationFeatureArrayOutput added in v4.28.0

func (o ResourceProviderRegistrationFeatureArrayOutput) ToResourceProviderRegistrationFeatureArrayOutput() ResourceProviderRegistrationFeatureArrayOutput

func (ResourceProviderRegistrationFeatureArrayOutput) ToResourceProviderRegistrationFeatureArrayOutputWithContext added in v4.28.0

func (o ResourceProviderRegistrationFeatureArrayOutput) ToResourceProviderRegistrationFeatureArrayOutputWithContext(ctx context.Context) ResourceProviderRegistrationFeatureArrayOutput

type ResourceProviderRegistrationFeatureInput added in v4.28.0

type ResourceProviderRegistrationFeatureInput interface {
	pulumi.Input

	ToResourceProviderRegistrationFeatureOutput() ResourceProviderRegistrationFeatureOutput
	ToResourceProviderRegistrationFeatureOutputWithContext(context.Context) ResourceProviderRegistrationFeatureOutput
}

ResourceProviderRegistrationFeatureInput is an input type that accepts ResourceProviderRegistrationFeatureArgs and ResourceProviderRegistrationFeatureOutput values. You can construct a concrete instance of `ResourceProviderRegistrationFeatureInput` via:

ResourceProviderRegistrationFeatureArgs{...}

type ResourceProviderRegistrationFeatureOutput added in v4.28.0

type ResourceProviderRegistrationFeatureOutput struct{ *pulumi.OutputState }

func (ResourceProviderRegistrationFeatureOutput) ElementType added in v4.28.0

func (ResourceProviderRegistrationFeatureOutput) Name added in v4.28.0

Specifies the name of the feature to register.

func (ResourceProviderRegistrationFeatureOutput) Registered added in v4.28.0

Should this feature be Registered or Unregistered?

func (ResourceProviderRegistrationFeatureOutput) ToResourceProviderRegistrationFeatureOutput added in v4.28.0

func (o ResourceProviderRegistrationFeatureOutput) ToResourceProviderRegistrationFeatureOutput() ResourceProviderRegistrationFeatureOutput

func (ResourceProviderRegistrationFeatureOutput) ToResourceProviderRegistrationFeatureOutputWithContext added in v4.28.0

func (o ResourceProviderRegistrationFeatureOutput) ToResourceProviderRegistrationFeatureOutputWithContext(ctx context.Context) ResourceProviderRegistrationFeatureOutput

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

type ResourceProviderRegistrationState

type ResourceProviderRegistrationState struct {
	// A list of `feature` blocks as defined below.
	Features ResourceProviderRegistrationFeatureArrayInput
	// 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 a Microsoft Customer Account Billing Scope ID, a Microsoft Partner 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"`
	// A mapping of tags to assign to the Subscription.
	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
	})
}

``` ### Creating A New Alias And Subscription For A Microsoft Partner 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 {
		exampleMpaAccountScope, err := billing.GetMpaAccountScope(ctx, &billing.GetMpaAccountScopeArgs{
			BillingAccountName: "e879cf0f-2b4d-5431-109a-f72fc9868693:024cabf4-7321-4cf9-be59-df0c77ca51de_2019-05-31",
			CustomerName:       "2281f543-7321-4cf9-1e23-edb4Oc31a31c",
		}, nil)
		if err != nil {
			return err
		}
		_, err = core.NewSubscription(ctx, "exampleSubscription", &core.SubscriptionArgs{
			SubscriptionName: pulumi.String("My Example MPA Subscription"),
			BillingScopeId:   pulumi.String(exampleMpaAccountScope.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 the 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

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 a Microsoft Customer Account Billing Scope ID, a Microsoft Partner 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
	// A mapping of tags to assign to the Subscription.
	Tags pulumi.StringMapInput
	// 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 SubscriptionCostManagementExport added in v4.28.0

type SubscriptionCostManagementExport struct {
	pulumi.CustomResourceState

	// Is the cost management export active? Default is `true`.
	Active pulumi.BoolPtrOutput `pulumi:"active"`
	// A `exportDataOptions` block as defined below.
	ExportDataOptions SubscriptionCostManagementExportExportDataOptionsOutput `pulumi:"exportDataOptions"`
	// A `exportDataStorageLocation` block as defined below.
	ExportDataStorageLocation SubscriptionCostManagementExportExportDataStorageLocationOutput `pulumi:"exportDataStorageLocation"`
	// Specifies the name of the Cost Management Export. Changing this forces a new resource to be created.
	Name                    pulumi.StringOutput `pulumi:"name"`
	RecurrencePeriodEndDate pulumi.StringOutput `pulumi:"recurrencePeriodEndDate"`
	// The date the export will start capturing information.
	RecurrencePeriodStartDate pulumi.StringOutput `pulumi:"recurrencePeriodStartDate"`
	// How often the requested information will be exported. Valid values include `Annually`, `Daily`, `Monthly`, `Weekly`.
	RecurrenceType pulumi.StringOutput `pulumi:"recurrenceType"`
	// The id of the subscription on which to create an export.
	SubscriptionId pulumi.StringOutput `pulumi:"subscriptionId"`
}

Manages a Cost Management Export for a Subscription.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/storage"
"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
		}
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		_, err = storage.NewAccount(ctx, "exampleAccount", &storage.AccountArgs{
			ResourceGroupName:      exampleResourceGroup.Name,
			Location:               exampleResourceGroup.Location,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("LRS"),
		})
		if err != nil {
			return err
		}
		exampleContainer, err := storage.NewContainer(ctx, "exampleContainer", &storage.ContainerArgs{
			StorageAccountName: pulumi.Any(azurerm_storage_account.Test.Name),
		})
		if err != nil {
			return err
		}
		_, err = core.NewSubscriptionCostManagementExport(ctx, "exampleSubscriptionCostManagementExport", &core.SubscriptionCostManagementExportArgs{
			SubscriptionId:            pulumi.Any(azurerm_subscription.Example.Id),
			RecurrenceType:            pulumi.String("Monthly"),
			RecurrencePeriodStartDate: pulumi.String("2020-08-18T00:00:00Z"),
			RecurrencePeriodEndDate:   pulumi.String("2020-09-18T00:00:00Z"),
			ExportDataStorageLocation: &core.SubscriptionCostManagementExportExportDataStorageLocationArgs{
				ContainerId:    exampleContainer.ResourceManagerId,
				RootFolderPath: pulumi.String("/root/updated"),
			},
			ExportDataOptions: &core.SubscriptionCostManagementExportExportDataOptionsArgs{
				Type:      pulumi.String("Usage"),
				TimeFrame: pulumi.String("WeekToDate"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Subscription Cost Management Exports can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:core/subscriptionCostManagementExport:SubscriptionCostManagementExport example /subscriptions/12345678-1234-9876-4563-123456789012/providers/Microsoft.CostManagement/exports/export1

```

func GetSubscriptionCostManagementExport added in v4.28.0

func GetSubscriptionCostManagementExport(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SubscriptionCostManagementExportState, opts ...pulumi.ResourceOption) (*SubscriptionCostManagementExport, error)

GetSubscriptionCostManagementExport gets an existing SubscriptionCostManagementExport 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 NewSubscriptionCostManagementExport added in v4.28.0

func NewSubscriptionCostManagementExport(ctx *pulumi.Context,
	name string, args *SubscriptionCostManagementExportArgs, opts ...pulumi.ResourceOption) (*SubscriptionCostManagementExport, error)

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

func (*SubscriptionCostManagementExport) ElementType added in v4.28.0

func (*SubscriptionCostManagementExport) ToSubscriptionCostManagementExportOutput added in v4.28.0

func (i *SubscriptionCostManagementExport) ToSubscriptionCostManagementExportOutput() SubscriptionCostManagementExportOutput

func (*SubscriptionCostManagementExport) ToSubscriptionCostManagementExportOutputWithContext added in v4.28.0

func (i *SubscriptionCostManagementExport) ToSubscriptionCostManagementExportOutputWithContext(ctx context.Context) SubscriptionCostManagementExportOutput

type SubscriptionCostManagementExportArgs added in v4.28.0

type SubscriptionCostManagementExportArgs struct {
	// Is the cost management export active? Default is `true`.
	Active pulumi.BoolPtrInput
	// A `exportDataOptions` block as defined below.
	ExportDataOptions SubscriptionCostManagementExportExportDataOptionsInput
	// A `exportDataStorageLocation` block as defined below.
	ExportDataStorageLocation SubscriptionCostManagementExportExportDataStorageLocationInput
	// Specifies the name of the Cost Management Export. Changing this forces a new resource to be created.
	Name                    pulumi.StringPtrInput
	RecurrencePeriodEndDate pulumi.StringInput
	// The date the export will start capturing information.
	RecurrencePeriodStartDate pulumi.StringInput
	// How often the requested information will be exported. Valid values include `Annually`, `Daily`, `Monthly`, `Weekly`.
	RecurrenceType pulumi.StringInput
	// The id of the subscription on which to create an export.
	SubscriptionId pulumi.StringInput
}

The set of arguments for constructing a SubscriptionCostManagementExport resource.

func (SubscriptionCostManagementExportArgs) ElementType added in v4.28.0

type SubscriptionCostManagementExportArray added in v4.28.0

type SubscriptionCostManagementExportArray []SubscriptionCostManagementExportInput

func (SubscriptionCostManagementExportArray) ElementType added in v4.28.0

func (SubscriptionCostManagementExportArray) ToSubscriptionCostManagementExportArrayOutput added in v4.28.0

func (i SubscriptionCostManagementExportArray) ToSubscriptionCostManagementExportArrayOutput() SubscriptionCostManagementExportArrayOutput

func (SubscriptionCostManagementExportArray) ToSubscriptionCostManagementExportArrayOutputWithContext added in v4.28.0

func (i SubscriptionCostManagementExportArray) ToSubscriptionCostManagementExportArrayOutputWithContext(ctx context.Context) SubscriptionCostManagementExportArrayOutput

type SubscriptionCostManagementExportArrayInput added in v4.28.0

type SubscriptionCostManagementExportArrayInput interface {
	pulumi.Input

	ToSubscriptionCostManagementExportArrayOutput() SubscriptionCostManagementExportArrayOutput
	ToSubscriptionCostManagementExportArrayOutputWithContext(context.Context) SubscriptionCostManagementExportArrayOutput
}

SubscriptionCostManagementExportArrayInput is an input type that accepts SubscriptionCostManagementExportArray and SubscriptionCostManagementExportArrayOutput values. You can construct a concrete instance of `SubscriptionCostManagementExportArrayInput` via:

SubscriptionCostManagementExportArray{ SubscriptionCostManagementExportArgs{...} }

type SubscriptionCostManagementExportArrayOutput added in v4.28.0

type SubscriptionCostManagementExportArrayOutput struct{ *pulumi.OutputState }

func (SubscriptionCostManagementExportArrayOutput) ElementType added in v4.28.0

func (SubscriptionCostManagementExportArrayOutput) Index added in v4.28.0

func (SubscriptionCostManagementExportArrayOutput) ToSubscriptionCostManagementExportArrayOutput added in v4.28.0

func (o SubscriptionCostManagementExportArrayOutput) ToSubscriptionCostManagementExportArrayOutput() SubscriptionCostManagementExportArrayOutput

func (SubscriptionCostManagementExportArrayOutput) ToSubscriptionCostManagementExportArrayOutputWithContext added in v4.28.0

func (o SubscriptionCostManagementExportArrayOutput) ToSubscriptionCostManagementExportArrayOutputWithContext(ctx context.Context) SubscriptionCostManagementExportArrayOutput

type SubscriptionCostManagementExportExportDataOptions added in v4.28.0

type SubscriptionCostManagementExportExportDataOptions struct {
	// The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: `WeekToDate`, `MonthToDate`, `BillingMonthToDate`, `TheLastWeek`, `TheLastMonth`, `TheLastBillingMonth`, `Custom`.
	TimeFrame string `pulumi:"timeFrame"`
	// The type of the query.
	Type string `pulumi:"type"`
}

type SubscriptionCostManagementExportExportDataOptionsArgs added in v4.28.0

type SubscriptionCostManagementExportExportDataOptionsArgs struct {
	// The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: `WeekToDate`, `MonthToDate`, `BillingMonthToDate`, `TheLastWeek`, `TheLastMonth`, `TheLastBillingMonth`, `Custom`.
	TimeFrame pulumi.StringInput `pulumi:"timeFrame"`
	// The type of the query.
	Type pulumi.StringInput `pulumi:"type"`
}

func (SubscriptionCostManagementExportExportDataOptionsArgs) ElementType added in v4.28.0

func (SubscriptionCostManagementExportExportDataOptionsArgs) ToSubscriptionCostManagementExportExportDataOptionsOutput added in v4.28.0

func (i SubscriptionCostManagementExportExportDataOptionsArgs) ToSubscriptionCostManagementExportExportDataOptionsOutput() SubscriptionCostManagementExportExportDataOptionsOutput

func (SubscriptionCostManagementExportExportDataOptionsArgs) ToSubscriptionCostManagementExportExportDataOptionsOutputWithContext added in v4.28.0

func (i SubscriptionCostManagementExportExportDataOptionsArgs) ToSubscriptionCostManagementExportExportDataOptionsOutputWithContext(ctx context.Context) SubscriptionCostManagementExportExportDataOptionsOutput

func (SubscriptionCostManagementExportExportDataOptionsArgs) ToSubscriptionCostManagementExportExportDataOptionsPtrOutput added in v4.28.0

func (i SubscriptionCostManagementExportExportDataOptionsArgs) ToSubscriptionCostManagementExportExportDataOptionsPtrOutput() SubscriptionCostManagementExportExportDataOptionsPtrOutput

func (SubscriptionCostManagementExportExportDataOptionsArgs) ToSubscriptionCostManagementExportExportDataOptionsPtrOutputWithContext added in v4.28.0

func (i SubscriptionCostManagementExportExportDataOptionsArgs) ToSubscriptionCostManagementExportExportDataOptionsPtrOutputWithContext(ctx context.Context) SubscriptionCostManagementExportExportDataOptionsPtrOutput

type SubscriptionCostManagementExportExportDataOptionsInput added in v4.28.0

type SubscriptionCostManagementExportExportDataOptionsInput interface {
	pulumi.Input

	ToSubscriptionCostManagementExportExportDataOptionsOutput() SubscriptionCostManagementExportExportDataOptionsOutput
	ToSubscriptionCostManagementExportExportDataOptionsOutputWithContext(context.Context) SubscriptionCostManagementExportExportDataOptionsOutput
}

SubscriptionCostManagementExportExportDataOptionsInput is an input type that accepts SubscriptionCostManagementExportExportDataOptionsArgs and SubscriptionCostManagementExportExportDataOptionsOutput values. You can construct a concrete instance of `SubscriptionCostManagementExportExportDataOptionsInput` via:

SubscriptionCostManagementExportExportDataOptionsArgs{...}

type SubscriptionCostManagementExportExportDataOptionsOutput added in v4.28.0

type SubscriptionCostManagementExportExportDataOptionsOutput struct{ *pulumi.OutputState }

func (SubscriptionCostManagementExportExportDataOptionsOutput) ElementType added in v4.28.0

func (SubscriptionCostManagementExportExportDataOptionsOutput) TimeFrame added in v4.28.0

The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: `WeekToDate`, `MonthToDate`, `BillingMonthToDate`, `TheLastWeek`, `TheLastMonth`, `TheLastBillingMonth`, `Custom`.

func (SubscriptionCostManagementExportExportDataOptionsOutput) ToSubscriptionCostManagementExportExportDataOptionsOutput added in v4.28.0

func (SubscriptionCostManagementExportExportDataOptionsOutput) ToSubscriptionCostManagementExportExportDataOptionsOutputWithContext added in v4.28.0

func (o SubscriptionCostManagementExportExportDataOptionsOutput) ToSubscriptionCostManagementExportExportDataOptionsOutputWithContext(ctx context.Context) SubscriptionCostManagementExportExportDataOptionsOutput

func (SubscriptionCostManagementExportExportDataOptionsOutput) ToSubscriptionCostManagementExportExportDataOptionsPtrOutput added in v4.28.0

func (SubscriptionCostManagementExportExportDataOptionsOutput) ToSubscriptionCostManagementExportExportDataOptionsPtrOutputWithContext added in v4.28.0

func (o SubscriptionCostManagementExportExportDataOptionsOutput) ToSubscriptionCostManagementExportExportDataOptionsPtrOutputWithContext(ctx context.Context) SubscriptionCostManagementExportExportDataOptionsPtrOutput

func (SubscriptionCostManagementExportExportDataOptionsOutput) Type added in v4.28.0

The type of the query.

type SubscriptionCostManagementExportExportDataOptionsPtrInput added in v4.28.0

type SubscriptionCostManagementExportExportDataOptionsPtrInput interface {
	pulumi.Input

	ToSubscriptionCostManagementExportExportDataOptionsPtrOutput() SubscriptionCostManagementExportExportDataOptionsPtrOutput
	ToSubscriptionCostManagementExportExportDataOptionsPtrOutputWithContext(context.Context) SubscriptionCostManagementExportExportDataOptionsPtrOutput
}

SubscriptionCostManagementExportExportDataOptionsPtrInput is an input type that accepts SubscriptionCostManagementExportExportDataOptionsArgs, SubscriptionCostManagementExportExportDataOptionsPtr and SubscriptionCostManagementExportExportDataOptionsPtrOutput values. You can construct a concrete instance of `SubscriptionCostManagementExportExportDataOptionsPtrInput` via:

        SubscriptionCostManagementExportExportDataOptionsArgs{...}

or:

        nil

type SubscriptionCostManagementExportExportDataOptionsPtrOutput added in v4.28.0

type SubscriptionCostManagementExportExportDataOptionsPtrOutput struct{ *pulumi.OutputState }

func (SubscriptionCostManagementExportExportDataOptionsPtrOutput) Elem added in v4.28.0

func (SubscriptionCostManagementExportExportDataOptionsPtrOutput) ElementType added in v4.28.0

func (SubscriptionCostManagementExportExportDataOptionsPtrOutput) TimeFrame added in v4.28.0

The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: `WeekToDate`, `MonthToDate`, `BillingMonthToDate`, `TheLastWeek`, `TheLastMonth`, `TheLastBillingMonth`, `Custom`.

func (SubscriptionCostManagementExportExportDataOptionsPtrOutput) ToSubscriptionCostManagementExportExportDataOptionsPtrOutput added in v4.28.0

func (SubscriptionCostManagementExportExportDataOptionsPtrOutput) ToSubscriptionCostManagementExportExportDataOptionsPtrOutputWithContext added in v4.28.0

func (o SubscriptionCostManagementExportExportDataOptionsPtrOutput) ToSubscriptionCostManagementExportExportDataOptionsPtrOutputWithContext(ctx context.Context) SubscriptionCostManagementExportExportDataOptionsPtrOutput

func (SubscriptionCostManagementExportExportDataOptionsPtrOutput) Type added in v4.28.0

The type of the query.

type SubscriptionCostManagementExportExportDataStorageLocation added in v4.28.0

type SubscriptionCostManagementExportExportDataStorageLocation struct {
	// The Resource Manager ID of the container where exports will be uploaded.
	ContainerId string `pulumi:"containerId"`
	// The path of the directory where exports will be uploaded.
	RootFolderPath string `pulumi:"rootFolderPath"`
}

type SubscriptionCostManagementExportExportDataStorageLocationArgs added in v4.28.0

type SubscriptionCostManagementExportExportDataStorageLocationArgs struct {
	// The Resource Manager ID of the container where exports will be uploaded.
	ContainerId pulumi.StringInput `pulumi:"containerId"`
	// The path of the directory where exports will be uploaded.
	RootFolderPath pulumi.StringInput `pulumi:"rootFolderPath"`
}

func (SubscriptionCostManagementExportExportDataStorageLocationArgs) ElementType added in v4.28.0

func (SubscriptionCostManagementExportExportDataStorageLocationArgs) ToSubscriptionCostManagementExportExportDataStorageLocationOutput added in v4.28.0

func (SubscriptionCostManagementExportExportDataStorageLocationArgs) ToSubscriptionCostManagementExportExportDataStorageLocationOutputWithContext added in v4.28.0

func (i SubscriptionCostManagementExportExportDataStorageLocationArgs) ToSubscriptionCostManagementExportExportDataStorageLocationOutputWithContext(ctx context.Context) SubscriptionCostManagementExportExportDataStorageLocationOutput

func (SubscriptionCostManagementExportExportDataStorageLocationArgs) ToSubscriptionCostManagementExportExportDataStorageLocationPtrOutput added in v4.28.0

func (SubscriptionCostManagementExportExportDataStorageLocationArgs) ToSubscriptionCostManagementExportExportDataStorageLocationPtrOutputWithContext added in v4.28.0

func (i SubscriptionCostManagementExportExportDataStorageLocationArgs) ToSubscriptionCostManagementExportExportDataStorageLocationPtrOutputWithContext(ctx context.Context) SubscriptionCostManagementExportExportDataStorageLocationPtrOutput

type SubscriptionCostManagementExportExportDataStorageLocationInput added in v4.28.0

type SubscriptionCostManagementExportExportDataStorageLocationInput interface {
	pulumi.Input

	ToSubscriptionCostManagementExportExportDataStorageLocationOutput() SubscriptionCostManagementExportExportDataStorageLocationOutput
	ToSubscriptionCostManagementExportExportDataStorageLocationOutputWithContext(context.Context) SubscriptionCostManagementExportExportDataStorageLocationOutput
}

SubscriptionCostManagementExportExportDataStorageLocationInput is an input type that accepts SubscriptionCostManagementExportExportDataStorageLocationArgs and SubscriptionCostManagementExportExportDataStorageLocationOutput values. You can construct a concrete instance of `SubscriptionCostManagementExportExportDataStorageLocationInput` via:

SubscriptionCostManagementExportExportDataStorageLocationArgs{...}

type SubscriptionCostManagementExportExportDataStorageLocationOutput added in v4.28.0

type SubscriptionCostManagementExportExportDataStorageLocationOutput struct{ *pulumi.OutputState }

func (SubscriptionCostManagementExportExportDataStorageLocationOutput) ContainerId added in v4.28.0

The Resource Manager ID of the container where exports will be uploaded.

func (SubscriptionCostManagementExportExportDataStorageLocationOutput) ElementType added in v4.28.0

func (SubscriptionCostManagementExportExportDataStorageLocationOutput) RootFolderPath added in v4.28.0

The path of the directory where exports will be uploaded.

func (SubscriptionCostManagementExportExportDataStorageLocationOutput) ToSubscriptionCostManagementExportExportDataStorageLocationOutput added in v4.28.0

func (SubscriptionCostManagementExportExportDataStorageLocationOutput) ToSubscriptionCostManagementExportExportDataStorageLocationOutputWithContext added in v4.28.0

func (o SubscriptionCostManagementExportExportDataStorageLocationOutput) ToSubscriptionCostManagementExportExportDataStorageLocationOutputWithContext(ctx context.Context) SubscriptionCostManagementExportExportDataStorageLocationOutput

func (SubscriptionCostManagementExportExportDataStorageLocationOutput) ToSubscriptionCostManagementExportExportDataStorageLocationPtrOutput added in v4.28.0

func (SubscriptionCostManagementExportExportDataStorageLocationOutput) ToSubscriptionCostManagementExportExportDataStorageLocationPtrOutputWithContext added in v4.28.0

func (o SubscriptionCostManagementExportExportDataStorageLocationOutput) ToSubscriptionCostManagementExportExportDataStorageLocationPtrOutputWithContext(ctx context.Context) SubscriptionCostManagementExportExportDataStorageLocationPtrOutput

type SubscriptionCostManagementExportExportDataStorageLocationPtrInput added in v4.28.0

type SubscriptionCostManagementExportExportDataStorageLocationPtrInput interface {
	pulumi.Input

	ToSubscriptionCostManagementExportExportDataStorageLocationPtrOutput() SubscriptionCostManagementExportExportDataStorageLocationPtrOutput
	ToSubscriptionCostManagementExportExportDataStorageLocationPtrOutputWithContext(context.Context) SubscriptionCostManagementExportExportDataStorageLocationPtrOutput
}

SubscriptionCostManagementExportExportDataStorageLocationPtrInput is an input type that accepts SubscriptionCostManagementExportExportDataStorageLocationArgs, SubscriptionCostManagementExportExportDataStorageLocationPtr and SubscriptionCostManagementExportExportDataStorageLocationPtrOutput values. You can construct a concrete instance of `SubscriptionCostManagementExportExportDataStorageLocationPtrInput` via:

        SubscriptionCostManagementExportExportDataStorageLocationArgs{...}

or:

        nil

type SubscriptionCostManagementExportExportDataStorageLocationPtrOutput added in v4.28.0

type SubscriptionCostManagementExportExportDataStorageLocationPtrOutput struct{ *pulumi.OutputState }

func (SubscriptionCostManagementExportExportDataStorageLocationPtrOutput) ContainerId added in v4.28.0

The Resource Manager ID of the container where exports will be uploaded.

func (SubscriptionCostManagementExportExportDataStorageLocationPtrOutput) Elem added in v4.28.0

func (SubscriptionCostManagementExportExportDataStorageLocationPtrOutput) ElementType added in v4.28.0

func (SubscriptionCostManagementExportExportDataStorageLocationPtrOutput) RootFolderPath added in v4.28.0

The path of the directory where exports will be uploaded.

func (SubscriptionCostManagementExportExportDataStorageLocationPtrOutput) ToSubscriptionCostManagementExportExportDataStorageLocationPtrOutput added in v4.28.0

func (SubscriptionCostManagementExportExportDataStorageLocationPtrOutput) ToSubscriptionCostManagementExportExportDataStorageLocationPtrOutputWithContext added in v4.28.0

func (o SubscriptionCostManagementExportExportDataStorageLocationPtrOutput) ToSubscriptionCostManagementExportExportDataStorageLocationPtrOutputWithContext(ctx context.Context) SubscriptionCostManagementExportExportDataStorageLocationPtrOutput

type SubscriptionCostManagementExportInput added in v4.28.0

type SubscriptionCostManagementExportInput interface {
	pulumi.Input

	ToSubscriptionCostManagementExportOutput() SubscriptionCostManagementExportOutput
	ToSubscriptionCostManagementExportOutputWithContext(ctx context.Context) SubscriptionCostManagementExportOutput
}

type SubscriptionCostManagementExportMap added in v4.28.0

type SubscriptionCostManagementExportMap map[string]SubscriptionCostManagementExportInput

func (SubscriptionCostManagementExportMap) ElementType added in v4.28.0

func (SubscriptionCostManagementExportMap) ToSubscriptionCostManagementExportMapOutput added in v4.28.0

func (i SubscriptionCostManagementExportMap) ToSubscriptionCostManagementExportMapOutput() SubscriptionCostManagementExportMapOutput

func (SubscriptionCostManagementExportMap) ToSubscriptionCostManagementExportMapOutputWithContext added in v4.28.0

func (i SubscriptionCostManagementExportMap) ToSubscriptionCostManagementExportMapOutputWithContext(ctx context.Context) SubscriptionCostManagementExportMapOutput

type SubscriptionCostManagementExportMapInput added in v4.28.0

type SubscriptionCostManagementExportMapInput interface {
	pulumi.Input

	ToSubscriptionCostManagementExportMapOutput() SubscriptionCostManagementExportMapOutput
	ToSubscriptionCostManagementExportMapOutputWithContext(context.Context) SubscriptionCostManagementExportMapOutput
}

SubscriptionCostManagementExportMapInput is an input type that accepts SubscriptionCostManagementExportMap and SubscriptionCostManagementExportMapOutput values. You can construct a concrete instance of `SubscriptionCostManagementExportMapInput` via:

SubscriptionCostManagementExportMap{ "key": SubscriptionCostManagementExportArgs{...} }

type SubscriptionCostManagementExportMapOutput added in v4.28.0

type SubscriptionCostManagementExportMapOutput struct{ *pulumi.OutputState }

func (SubscriptionCostManagementExportMapOutput) ElementType added in v4.28.0

func (SubscriptionCostManagementExportMapOutput) MapIndex added in v4.28.0

func (SubscriptionCostManagementExportMapOutput) ToSubscriptionCostManagementExportMapOutput added in v4.28.0

func (o SubscriptionCostManagementExportMapOutput) ToSubscriptionCostManagementExportMapOutput() SubscriptionCostManagementExportMapOutput

func (SubscriptionCostManagementExportMapOutput) ToSubscriptionCostManagementExportMapOutputWithContext added in v4.28.0

func (o SubscriptionCostManagementExportMapOutput) ToSubscriptionCostManagementExportMapOutputWithContext(ctx context.Context) SubscriptionCostManagementExportMapOutput

type SubscriptionCostManagementExportOutput added in v4.28.0

type SubscriptionCostManagementExportOutput struct{ *pulumi.OutputState }

func (SubscriptionCostManagementExportOutput) ElementType added in v4.28.0

func (SubscriptionCostManagementExportOutput) ToSubscriptionCostManagementExportOutput added in v4.28.0

func (o SubscriptionCostManagementExportOutput) ToSubscriptionCostManagementExportOutput() SubscriptionCostManagementExportOutput

func (SubscriptionCostManagementExportOutput) ToSubscriptionCostManagementExportOutputWithContext added in v4.28.0

func (o SubscriptionCostManagementExportOutput) ToSubscriptionCostManagementExportOutputWithContext(ctx context.Context) SubscriptionCostManagementExportOutput

type SubscriptionCostManagementExportState added in v4.28.0

type SubscriptionCostManagementExportState struct {
	// Is the cost management export active? Default is `true`.
	Active pulumi.BoolPtrInput
	// A `exportDataOptions` block as defined below.
	ExportDataOptions SubscriptionCostManagementExportExportDataOptionsPtrInput
	// A `exportDataStorageLocation` block as defined below.
	ExportDataStorageLocation SubscriptionCostManagementExportExportDataStorageLocationPtrInput
	// Specifies the name of the Cost Management Export. Changing this forces a new resource to be created.
	Name                    pulumi.StringPtrInput
	RecurrencePeriodEndDate pulumi.StringPtrInput
	// The date the export will start capturing information.
	RecurrencePeriodStartDate pulumi.StringPtrInput
	// How often the requested information will be exported. Valid values include `Annually`, `Daily`, `Monthly`, `Weekly`.
	RecurrenceType pulumi.StringPtrInput
	// The id of the subscription on which to create an export.
	SubscriptionId pulumi.StringPtrInput
}

func (SubscriptionCostManagementExportState) ElementType added in v4.28.0

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

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"`
	// An `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"`
	// One or more `nonComplianceMessage` blocks as defined below.
	NonComplianceMessages SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput `pulumi:"nonComplianceMessages"`
	// Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
	NotScopes pulumi.StringArrayOutput `pulumi:"notScopes"`
	// A JSON mapping of any Parameters for this Policy.
	Parameters pulumi.StringPtrOutput `pulumi:"parameters"`
	// The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
	PolicyDefinitionId pulumi.StringOutput `pulumi:"policyDefinitionId"`
	// 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 {
		current, 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.String(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

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
	// An `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
	// One or more `nonComplianceMessage` blocks as defined below.
	NonComplianceMessages SubscriptionPolicyAssignmentNonComplianceMessageArrayInput
	// Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
	NotScopes pulumi.StringArrayInput
	// A JSON mapping of any Parameters for this Policy.
	Parameters pulumi.StringPtrInput
	// The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
	PolicyDefinitionId pulumi.StringInput
	// The 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.StringInput `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 SubscriptionPolicyAssignmentNonComplianceMessage added in v4.32.0

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

type SubscriptionPolicyAssignmentNonComplianceMessageArgs added in v4.32.0

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

func (SubscriptionPolicyAssignmentNonComplianceMessageArgs) ElementType added in v4.32.0

func (SubscriptionPolicyAssignmentNonComplianceMessageArgs) ToSubscriptionPolicyAssignmentNonComplianceMessageOutput added in v4.32.0

func (i SubscriptionPolicyAssignmentNonComplianceMessageArgs) ToSubscriptionPolicyAssignmentNonComplianceMessageOutput() SubscriptionPolicyAssignmentNonComplianceMessageOutput

func (SubscriptionPolicyAssignmentNonComplianceMessageArgs) ToSubscriptionPolicyAssignmentNonComplianceMessageOutputWithContext added in v4.32.0

func (i SubscriptionPolicyAssignmentNonComplianceMessageArgs) ToSubscriptionPolicyAssignmentNonComplianceMessageOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentNonComplianceMessageOutput

type SubscriptionPolicyAssignmentNonComplianceMessageArray added in v4.32.0

type SubscriptionPolicyAssignmentNonComplianceMessageArray []SubscriptionPolicyAssignmentNonComplianceMessageInput

func (SubscriptionPolicyAssignmentNonComplianceMessageArray) ElementType added in v4.32.0

func (SubscriptionPolicyAssignmentNonComplianceMessageArray) ToSubscriptionPolicyAssignmentNonComplianceMessageArrayOutput added in v4.32.0

func (i SubscriptionPolicyAssignmentNonComplianceMessageArray) ToSubscriptionPolicyAssignmentNonComplianceMessageArrayOutput() SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput

func (SubscriptionPolicyAssignmentNonComplianceMessageArray) ToSubscriptionPolicyAssignmentNonComplianceMessageArrayOutputWithContext added in v4.32.0

func (i SubscriptionPolicyAssignmentNonComplianceMessageArray) ToSubscriptionPolicyAssignmentNonComplianceMessageArrayOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput

type SubscriptionPolicyAssignmentNonComplianceMessageArrayInput added in v4.32.0

type SubscriptionPolicyAssignmentNonComplianceMessageArrayInput interface {
	pulumi.Input

	ToSubscriptionPolicyAssignmentNonComplianceMessageArrayOutput() SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput
	ToSubscriptionPolicyAssignmentNonComplianceMessageArrayOutputWithContext(context.Context) SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput
}

SubscriptionPolicyAssignmentNonComplianceMessageArrayInput is an input type that accepts SubscriptionPolicyAssignmentNonComplianceMessageArray and SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput values. You can construct a concrete instance of `SubscriptionPolicyAssignmentNonComplianceMessageArrayInput` via:

SubscriptionPolicyAssignmentNonComplianceMessageArray{ SubscriptionPolicyAssignmentNonComplianceMessageArgs{...} }

type SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput added in v4.32.0

type SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput struct{ *pulumi.OutputState }

func (SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput) ElementType added in v4.32.0

func (SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput) Index added in v4.32.0

func (SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput) ToSubscriptionPolicyAssignmentNonComplianceMessageArrayOutput added in v4.32.0

func (SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput) ToSubscriptionPolicyAssignmentNonComplianceMessageArrayOutputWithContext added in v4.32.0

func (o SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput) ToSubscriptionPolicyAssignmentNonComplianceMessageArrayOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentNonComplianceMessageArrayOutput

type SubscriptionPolicyAssignmentNonComplianceMessageInput added in v4.32.0

type SubscriptionPolicyAssignmentNonComplianceMessageInput interface {
	pulumi.Input

	ToSubscriptionPolicyAssignmentNonComplianceMessageOutput() SubscriptionPolicyAssignmentNonComplianceMessageOutput
	ToSubscriptionPolicyAssignmentNonComplianceMessageOutputWithContext(context.Context) SubscriptionPolicyAssignmentNonComplianceMessageOutput
}

SubscriptionPolicyAssignmentNonComplianceMessageInput is an input type that accepts SubscriptionPolicyAssignmentNonComplianceMessageArgs and SubscriptionPolicyAssignmentNonComplianceMessageOutput values. You can construct a concrete instance of `SubscriptionPolicyAssignmentNonComplianceMessageInput` via:

SubscriptionPolicyAssignmentNonComplianceMessageArgs{...}

type SubscriptionPolicyAssignmentNonComplianceMessageOutput added in v4.32.0

type SubscriptionPolicyAssignmentNonComplianceMessageOutput struct{ *pulumi.OutputState }

func (SubscriptionPolicyAssignmentNonComplianceMessageOutput) Content added in v4.32.0

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

func (SubscriptionPolicyAssignmentNonComplianceMessageOutput) ElementType added in v4.32.0

func (SubscriptionPolicyAssignmentNonComplianceMessageOutput) PolicyDefinitionReferenceId added in v4.32.0

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

func (SubscriptionPolicyAssignmentNonComplianceMessageOutput) ToSubscriptionPolicyAssignmentNonComplianceMessageOutput added in v4.32.0

func (SubscriptionPolicyAssignmentNonComplianceMessageOutput) ToSubscriptionPolicyAssignmentNonComplianceMessageOutputWithContext added in v4.32.0

func (o SubscriptionPolicyAssignmentNonComplianceMessageOutput) ToSubscriptionPolicyAssignmentNonComplianceMessageOutputWithContext(ctx context.Context) SubscriptionPolicyAssignmentNonComplianceMessageOutput

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

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
	// An `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
	// One or more `nonComplianceMessage` blocks as defined below.
	NonComplianceMessages SubscriptionPolicyAssignmentNonComplianceMessageArrayInput
	// Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
	NotScopes pulumi.StringArrayInput
	// A JSON mapping of any Parameters for this Policy.
	Parameters pulumi.StringPtrInput
	// The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
	PolicyDefinitionId pulumi.StringPtrInput
	// 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 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 a Microsoft Customer Account Billing Scope ID, a Microsoft Partner 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
	// A mapping of tags to assign to the Subscription.
	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

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

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

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

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"`
}

## 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 {
		exampleTemplateSpecVersion, err := core.GetTemplateSpecVersion(ctx, &core.GetTemplateSpecVersionArgs{
			Name:              "myTemplateForTenant",
			ResourceGroupName: "myResourceGroup",
			Version:           "v0.1",
		}, nil)
		if err != nil {
			return err
		}
		_, err = core.NewTenantTemplateDeployment(ctx, "exampleTenantTemplateDeployment", &core.TenantTemplateDeploymentArgs{
			Location:              pulumi.String("West Europe"),
			TemplateSpecVersionId: pulumi.String(exampleTemplateSpecVersion.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

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

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

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