core

package
v3.55.0 Latest Latest
Warning

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

Go to latest
Published: Apr 9, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type 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/v3/go/azure/core"
"github.com/pulumi/pulumi/sdk/v2/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 added in v3.31.1

func (*CustomProvider) ElementType() reflect.Type

func (*CustomProvider) ToCustomProviderOutput added in v3.31.1

func (i *CustomProvider) ToCustomProviderOutput() CustomProviderOutput

func (*CustomProvider) ToCustomProviderOutputWithContext added in v3.31.1

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

func (*CustomProvider) ToCustomProviderPtrOutput added in v3.47.1

func (i *CustomProvider) ToCustomProviderPtrOutput() CustomProviderPtrOutput

func (*CustomProvider) ToCustomProviderPtrOutputWithContext added in v3.47.1

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

type CustomProviderAction

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

type CustomProviderActionArgs

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

func (CustomProviderActionArgs) ElementType

func (CustomProviderActionArgs) ElementType() reflect.Type

func (CustomProviderActionArgs) ToCustomProviderActionOutput

func (i CustomProviderActionArgs) ToCustomProviderActionOutput() CustomProviderActionOutput

func (CustomProviderActionArgs) ToCustomProviderActionOutputWithContext

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

type CustomProviderActionArray

type CustomProviderActionArray []CustomProviderActionInput

func (CustomProviderActionArray) ElementType

func (CustomProviderActionArray) ElementType() reflect.Type

func (CustomProviderActionArray) ToCustomProviderActionArrayOutput

func (i CustomProviderActionArray) ToCustomProviderActionArrayOutput() CustomProviderActionArrayOutput

func (CustomProviderActionArray) ToCustomProviderActionArrayOutputWithContext

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

type CustomProviderActionArrayInput

type CustomProviderActionArrayInput interface {
	pulumi.Input

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

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

CustomProviderActionArray{ CustomProviderActionArgs{...} }

type CustomProviderActionArrayOutput

type CustomProviderActionArrayOutput struct{ *pulumi.OutputState }

func (CustomProviderActionArrayOutput) ElementType

func (CustomProviderActionArrayOutput) Index

func (CustomProviderActionArrayOutput) ToCustomProviderActionArrayOutput

func (o CustomProviderActionArrayOutput) ToCustomProviderActionArrayOutput() CustomProviderActionArrayOutput

func (CustomProviderActionArrayOutput) ToCustomProviderActionArrayOutputWithContext

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

type CustomProviderActionInput

type CustomProviderActionInput interface {
	pulumi.Input

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

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

CustomProviderActionArgs{...}

type CustomProviderActionOutput

type CustomProviderActionOutput struct{ *pulumi.OutputState }

func (CustomProviderActionOutput) ElementType

func (CustomProviderActionOutput) ElementType() reflect.Type

func (CustomProviderActionOutput) Endpoint

Specifies the endpoint of the action.

func (CustomProviderActionOutput) Name

Specifies the name of the action.

func (CustomProviderActionOutput) ToCustomProviderActionOutput

func (o CustomProviderActionOutput) ToCustomProviderActionOutput() CustomProviderActionOutput

func (CustomProviderActionOutput) ToCustomProviderActionOutputWithContext

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

type CustomProviderArgs

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

The set of arguments for constructing a CustomProvider resource.

func (CustomProviderArgs) ElementType

func (CustomProviderArgs) ElementType() reflect.Type

type CustomProviderArray added in v3.47.1

type CustomProviderArray []CustomProviderInput

func (CustomProviderArray) ElementType added in v3.47.1

func (CustomProviderArray) ElementType() reflect.Type

func (CustomProviderArray) ToCustomProviderArrayOutput added in v3.47.1

func (i CustomProviderArray) ToCustomProviderArrayOutput() CustomProviderArrayOutput

func (CustomProviderArray) ToCustomProviderArrayOutputWithContext added in v3.47.1

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

type CustomProviderArrayInput added in v3.47.1

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 added in v3.47.1

type CustomProviderArrayOutput struct{ *pulumi.OutputState }

func (CustomProviderArrayOutput) ElementType added in v3.47.1

func (CustomProviderArrayOutput) ElementType() reflect.Type

func (CustomProviderArrayOutput) Index added in v3.47.1

func (CustomProviderArrayOutput) ToCustomProviderArrayOutput added in v3.47.1

func (o CustomProviderArrayOutput) ToCustomProviderArrayOutput() CustomProviderArrayOutput

func (CustomProviderArrayOutput) ToCustomProviderArrayOutputWithContext added in v3.47.1

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

type CustomProviderInput added in v3.31.1

type CustomProviderInput interface {
	pulumi.Input

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

type CustomProviderMap added in v3.47.1

type CustomProviderMap map[string]CustomProviderInput

func (CustomProviderMap) ElementType added in v3.47.1

func (CustomProviderMap) ElementType() reflect.Type

func (CustomProviderMap) ToCustomProviderMapOutput added in v3.47.1

func (i CustomProviderMap) ToCustomProviderMapOutput() CustomProviderMapOutput

func (CustomProviderMap) ToCustomProviderMapOutputWithContext added in v3.47.1

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

type CustomProviderMapInput added in v3.47.1

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 added in v3.47.1

type CustomProviderMapOutput struct{ *pulumi.OutputState }

func (CustomProviderMapOutput) ElementType added in v3.47.1

func (CustomProviderMapOutput) ElementType() reflect.Type

func (CustomProviderMapOutput) MapIndex added in v3.47.1

func (CustomProviderMapOutput) ToCustomProviderMapOutput added in v3.47.1

func (o CustomProviderMapOutput) ToCustomProviderMapOutput() CustomProviderMapOutput

func (CustomProviderMapOutput) ToCustomProviderMapOutputWithContext added in v3.47.1

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

type CustomProviderOutput added in v3.31.1

type CustomProviderOutput struct {
	*pulumi.OutputState
}

func (CustomProviderOutput) ElementType added in v3.31.1

func (CustomProviderOutput) ElementType() reflect.Type

func (CustomProviderOutput) ToCustomProviderOutput added in v3.31.1

func (o CustomProviderOutput) ToCustomProviderOutput() CustomProviderOutput

func (CustomProviderOutput) ToCustomProviderOutputWithContext added in v3.31.1

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

func (CustomProviderOutput) ToCustomProviderPtrOutput added in v3.47.1

func (o CustomProviderOutput) ToCustomProviderPtrOutput() CustomProviderPtrOutput

func (CustomProviderOutput) ToCustomProviderPtrOutputWithContext added in v3.47.1

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

type CustomProviderPtrInput added in v3.47.1

type CustomProviderPtrInput interface {
	pulumi.Input

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

type CustomProviderPtrOutput added in v3.47.1

type CustomProviderPtrOutput struct {
	*pulumi.OutputState
}

func (CustomProviderPtrOutput) ElementType added in v3.47.1

func (CustomProviderPtrOutput) ElementType() reflect.Type

func (CustomProviderPtrOutput) ToCustomProviderPtrOutput added in v3.47.1

func (o CustomProviderPtrOutput) ToCustomProviderPtrOutput() CustomProviderPtrOutput

func (CustomProviderPtrOutput) ToCustomProviderPtrOutputWithContext added in v3.47.1

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

type CustomProviderResourceType

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

type CustomProviderResourceTypeArgs

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

func (CustomProviderResourceTypeArgs) ElementType

func (CustomProviderResourceTypeArgs) ToCustomProviderResourceTypeOutput

func (i CustomProviderResourceTypeArgs) ToCustomProviderResourceTypeOutput() CustomProviderResourceTypeOutput

func (CustomProviderResourceTypeArgs) ToCustomProviderResourceTypeOutputWithContext

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

type CustomProviderResourceTypeArray

type CustomProviderResourceTypeArray []CustomProviderResourceTypeInput

func (CustomProviderResourceTypeArray) ElementType

func (CustomProviderResourceTypeArray) ToCustomProviderResourceTypeArrayOutput

func (i CustomProviderResourceTypeArray) ToCustomProviderResourceTypeArrayOutput() CustomProviderResourceTypeArrayOutput

func (CustomProviderResourceTypeArray) ToCustomProviderResourceTypeArrayOutputWithContext

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

type CustomProviderResourceTypeArrayInput

type CustomProviderResourceTypeArrayInput interface {
	pulumi.Input

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

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

CustomProviderResourceTypeArray{ CustomProviderResourceTypeArgs{...} }

type CustomProviderResourceTypeArrayOutput

type CustomProviderResourceTypeArrayOutput struct{ *pulumi.OutputState }

func (CustomProviderResourceTypeArrayOutput) ElementType

func (CustomProviderResourceTypeArrayOutput) Index

func (CustomProviderResourceTypeArrayOutput) ToCustomProviderResourceTypeArrayOutput

func (o CustomProviderResourceTypeArrayOutput) ToCustomProviderResourceTypeArrayOutput() CustomProviderResourceTypeArrayOutput

func (CustomProviderResourceTypeArrayOutput) ToCustomProviderResourceTypeArrayOutputWithContext

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

type CustomProviderResourceTypeInput

type CustomProviderResourceTypeInput interface {
	pulumi.Input

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

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

CustomProviderResourceTypeArgs{...}

type CustomProviderResourceTypeOutput

type CustomProviderResourceTypeOutput struct{ *pulumi.OutputState }

func (CustomProviderResourceTypeOutput) ElementType

func (CustomProviderResourceTypeOutput) Endpoint

Specifies the endpoint of the route definition.

func (CustomProviderResourceTypeOutput) Name

Specifies the name of the route definition.

func (CustomProviderResourceTypeOutput) RoutingType

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

func (CustomProviderResourceTypeOutput) ToCustomProviderResourceTypeOutput

func (o CustomProviderResourceTypeOutput) ToCustomProviderResourceTypeOutput() CustomProviderResourceTypeOutput

func (CustomProviderResourceTypeOutput) ToCustomProviderResourceTypeOutputWithContext

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

type CustomProviderState

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

func (CustomProviderState) ElementType

func (CustomProviderState) ElementType() reflect.Type

type CustomProviderValidation

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

type CustomProviderValidationArgs

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

func (CustomProviderValidationArgs) ElementType

func (CustomProviderValidationArgs) ToCustomProviderValidationOutput

func (i CustomProviderValidationArgs) ToCustomProviderValidationOutput() CustomProviderValidationOutput

func (CustomProviderValidationArgs) ToCustomProviderValidationOutputWithContext

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

type CustomProviderValidationArray

type CustomProviderValidationArray []CustomProviderValidationInput

func (CustomProviderValidationArray) ElementType

func (CustomProviderValidationArray) ToCustomProviderValidationArrayOutput

func (i CustomProviderValidationArray) ToCustomProviderValidationArrayOutput() CustomProviderValidationArrayOutput

func (CustomProviderValidationArray) ToCustomProviderValidationArrayOutputWithContext

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

type CustomProviderValidationArrayInput

type CustomProviderValidationArrayInput interface {
	pulumi.Input

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

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

CustomProviderValidationArray{ CustomProviderValidationArgs{...} }

type CustomProviderValidationArrayOutput

type CustomProviderValidationArrayOutput struct{ *pulumi.OutputState }

func (CustomProviderValidationArrayOutput) ElementType

func (CustomProviderValidationArrayOutput) Index

func (CustomProviderValidationArrayOutput) ToCustomProviderValidationArrayOutput

func (o CustomProviderValidationArrayOutput) ToCustomProviderValidationArrayOutput() CustomProviderValidationArrayOutput

func (CustomProviderValidationArrayOutput) ToCustomProviderValidationArrayOutputWithContext

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

type CustomProviderValidationInput

type CustomProviderValidationInput interface {
	pulumi.Input

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

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

CustomProviderValidationArgs{...}

type CustomProviderValidationOutput

type CustomProviderValidationOutput struct{ *pulumi.OutputState }

func (CustomProviderValidationOutput) ElementType

func (CustomProviderValidationOutput) Specification

The endpoint where the validation specification is located.

func (CustomProviderValidationOutput) ToCustomProviderValidationOutput

func (o CustomProviderValidationOutput) ToCustomProviderValidationOutput() CustomProviderValidationOutput

func (CustomProviderValidationOutput) ToCustomProviderValidationOutputWithContext

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

type GetClientConfigResult

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

A collection of values returned by getClientConfig.

func GetClientConfig

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

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

## Example Usage

```go package main

import (

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

)

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

```

type GetResourcesArgs

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

A collection of arguments for invoking getResources.

type GetResourcesResource

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

type GetResourcesResourceArgs

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

func (GetResourcesResourceArgs) ElementType

func (GetResourcesResourceArgs) ElementType() reflect.Type

func (GetResourcesResourceArgs) ToGetResourcesResourceOutput

func (i GetResourcesResourceArgs) ToGetResourcesResourceOutput() GetResourcesResourceOutput

func (GetResourcesResourceArgs) ToGetResourcesResourceOutputWithContext

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

type GetResourcesResourceArray

type GetResourcesResourceArray []GetResourcesResourceInput

func (GetResourcesResourceArray) ElementType

func (GetResourcesResourceArray) ElementType() reflect.Type

func (GetResourcesResourceArray) ToGetResourcesResourceArrayOutput

func (i GetResourcesResourceArray) ToGetResourcesResourceArrayOutput() GetResourcesResourceArrayOutput

func (GetResourcesResourceArray) ToGetResourcesResourceArrayOutputWithContext

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

type GetResourcesResourceArrayInput

type GetResourcesResourceArrayInput interface {
	pulumi.Input

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

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

GetResourcesResourceArray{ GetResourcesResourceArgs{...} }

type GetResourcesResourceArrayOutput

type GetResourcesResourceArrayOutput struct{ *pulumi.OutputState }

func (GetResourcesResourceArrayOutput) ElementType

func (GetResourcesResourceArrayOutput) Index

func (GetResourcesResourceArrayOutput) ToGetResourcesResourceArrayOutput

func (o GetResourcesResourceArrayOutput) ToGetResourcesResourceArrayOutput() GetResourcesResourceArrayOutput

func (GetResourcesResourceArrayOutput) ToGetResourcesResourceArrayOutputWithContext

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

type GetResourcesResourceInput

type GetResourcesResourceInput interface {
	pulumi.Input

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

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

GetResourcesResourceArgs{...}

type GetResourcesResourceOutput

type GetResourcesResourceOutput struct{ *pulumi.OutputState }

func (GetResourcesResourceOutput) ElementType

func (GetResourcesResourceOutput) ElementType() reflect.Type

func (GetResourcesResourceOutput) Id

The ID of this Resource.

func (GetResourcesResourceOutput) Location

The Azure Region in which this Resource exists.

func (GetResourcesResourceOutput) Name

The name of the Resource.

func (GetResourcesResourceOutput) Tags

A map of tags assigned to this Resource.

func (GetResourcesResourceOutput) ToGetResourcesResourceOutput

func (o GetResourcesResourceOutput) ToGetResourcesResourceOutput() GetResourcesResourceOutput

func (GetResourcesResourceOutput) ToGetResourcesResourceOutputWithContext

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

func (GetResourcesResourceOutput) Type

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

type GetResourcesResult

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

A collection of values returned by getResources.

func GetResources

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

Use this data source to access information about existing resources.

type GetSubscriptionsArgs

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

A collection of arguments for invoking getSubscriptions.

type GetSubscriptionsResult

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

A collection of values returned by getSubscriptions.

func GetSubscriptions

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

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

## Example Usage

```go package main

import (

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

)

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

```

type GetSubscriptionsSubscription

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

type GetSubscriptionsSubscriptionArgs

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

func (GetSubscriptionsSubscriptionArgs) ElementType

func (GetSubscriptionsSubscriptionArgs) ToGetSubscriptionsSubscriptionOutput

func (i GetSubscriptionsSubscriptionArgs) ToGetSubscriptionsSubscriptionOutput() GetSubscriptionsSubscriptionOutput

func (GetSubscriptionsSubscriptionArgs) ToGetSubscriptionsSubscriptionOutputWithContext

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

type GetSubscriptionsSubscriptionArray

type GetSubscriptionsSubscriptionArray []GetSubscriptionsSubscriptionInput

func (GetSubscriptionsSubscriptionArray) ElementType

func (GetSubscriptionsSubscriptionArray) ToGetSubscriptionsSubscriptionArrayOutput

func (i GetSubscriptionsSubscriptionArray) ToGetSubscriptionsSubscriptionArrayOutput() GetSubscriptionsSubscriptionArrayOutput

func (GetSubscriptionsSubscriptionArray) ToGetSubscriptionsSubscriptionArrayOutputWithContext

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

type GetSubscriptionsSubscriptionArrayInput

type GetSubscriptionsSubscriptionArrayInput interface {
	pulumi.Input

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

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

GetSubscriptionsSubscriptionArray{ GetSubscriptionsSubscriptionArgs{...} }

type GetSubscriptionsSubscriptionArrayOutput

type GetSubscriptionsSubscriptionArrayOutput struct{ *pulumi.OutputState }

func (GetSubscriptionsSubscriptionArrayOutput) ElementType

func (GetSubscriptionsSubscriptionArrayOutput) Index

func (GetSubscriptionsSubscriptionArrayOutput) ToGetSubscriptionsSubscriptionArrayOutput

func (o GetSubscriptionsSubscriptionArrayOutput) ToGetSubscriptionsSubscriptionArrayOutput() GetSubscriptionsSubscriptionArrayOutput

func (GetSubscriptionsSubscriptionArrayOutput) ToGetSubscriptionsSubscriptionArrayOutputWithContext

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

type GetSubscriptionsSubscriptionInput

type GetSubscriptionsSubscriptionInput interface {
	pulumi.Input

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

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

GetSubscriptionsSubscriptionArgs{...}

type GetSubscriptionsSubscriptionOutput

type GetSubscriptionsSubscriptionOutput struct{ *pulumi.OutputState }

func (GetSubscriptionsSubscriptionOutput) DisplayName

The subscription display name.

func (GetSubscriptionsSubscriptionOutput) ElementType

func (GetSubscriptionsSubscriptionOutput) Id added in v3.48.0

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 added in v3.42.0

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 added in v3.53.0

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

A collection of arguments for invoking getTemplateSpecVersion.

type GetTemplateSpecVersionResult added in v3.53.0

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 added in v3.53.0

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

)

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

```

type GetUserAssignedIdentityArgs

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

A collection of arguments for invoking getUserAssignedIdentity.

type GetUserAssignedIdentityResult

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

A collection of values returned by getUserAssignedIdentity.

func GetUserAssignedIdentity deprecated

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

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

## Example Usage ### Reference An Existing)

```go package main

import (

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

)

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

```

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

type LookupResourceGroupArgs

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

A collection of arguments for invoking getResourceGroup.

type LookupResourceGroupResult

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

A collection of values returned by getResourceGroup.

func LookupResourceGroup

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

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

## Example Usage

```go package main

import (

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

)

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

```

type LookupSubscriptionArgs added in v3.50.0

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

A collection of arguments for invoking getSubscription.

type LookupSubscriptionResult added in v3.50.0

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 added in v3.50.0

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/v3/go/azure/core"
"github.com/pulumi/pulumi/sdk/v2/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 ResourceGroup

type ResourceGroup struct {
	pulumi.CustomResourceState

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

Manages a Resource Group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi/sdk/v2/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 added in v3.31.1

func (*ResourceGroup) ElementType() reflect.Type

func (*ResourceGroup) ToResourceGroupOutput added in v3.31.1

func (i *ResourceGroup) ToResourceGroupOutput() ResourceGroupOutput

func (*ResourceGroup) ToResourceGroupOutputWithContext added in v3.31.1

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

func (*ResourceGroup) ToResourceGroupPtrOutput added in v3.47.1

func (i *ResourceGroup) ToResourceGroupPtrOutput() ResourceGroupPtrOutput

func (*ResourceGroup) ToResourceGroupPtrOutputWithContext added in v3.47.1

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

type ResourceGroupArgs

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

The set of arguments for constructing a ResourceGroup resource.

func (ResourceGroupArgs) ElementType

func (ResourceGroupArgs) ElementType() reflect.Type

type ResourceGroupArray added in v3.47.1

type ResourceGroupArray []ResourceGroupInput

func (ResourceGroupArray) ElementType added in v3.47.1

func (ResourceGroupArray) ElementType() reflect.Type

func (ResourceGroupArray) ToResourceGroupArrayOutput added in v3.47.1

func (i ResourceGroupArray) ToResourceGroupArrayOutput() ResourceGroupArrayOutput

func (ResourceGroupArray) ToResourceGroupArrayOutputWithContext added in v3.47.1

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

type ResourceGroupArrayInput added in v3.47.1

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 added in v3.47.1

type ResourceGroupArrayOutput struct{ *pulumi.OutputState }

func (ResourceGroupArrayOutput) ElementType added in v3.47.1

func (ResourceGroupArrayOutput) ElementType() reflect.Type

func (ResourceGroupArrayOutput) Index added in v3.47.1

func (ResourceGroupArrayOutput) ToResourceGroupArrayOutput added in v3.47.1

func (o ResourceGroupArrayOutput) ToResourceGroupArrayOutput() ResourceGroupArrayOutput

func (ResourceGroupArrayOutput) ToResourceGroupArrayOutputWithContext added in v3.47.1

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

type ResourceGroupInput added in v3.31.1

type ResourceGroupInput interface {
	pulumi.Input

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

type ResourceGroupMap added in v3.47.1

type ResourceGroupMap map[string]ResourceGroupInput

func (ResourceGroupMap) ElementType added in v3.47.1

func (ResourceGroupMap) ElementType() reflect.Type

func (ResourceGroupMap) ToResourceGroupMapOutput added in v3.47.1

func (i ResourceGroupMap) ToResourceGroupMapOutput() ResourceGroupMapOutput

func (ResourceGroupMap) ToResourceGroupMapOutputWithContext added in v3.47.1

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

type ResourceGroupMapInput added in v3.47.1

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 added in v3.47.1

type ResourceGroupMapOutput struct{ *pulumi.OutputState }

func (ResourceGroupMapOutput) ElementType added in v3.47.1

func (ResourceGroupMapOutput) ElementType() reflect.Type

func (ResourceGroupMapOutput) MapIndex added in v3.47.1

func (ResourceGroupMapOutput) ToResourceGroupMapOutput added in v3.47.1

func (o ResourceGroupMapOutput) ToResourceGroupMapOutput() ResourceGroupMapOutput

func (ResourceGroupMapOutput) ToResourceGroupMapOutputWithContext added in v3.47.1

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

type ResourceGroupOutput added in v3.31.1

type ResourceGroupOutput struct {
	*pulumi.OutputState
}

func (ResourceGroupOutput) ElementType added in v3.31.1

func (ResourceGroupOutput) ElementType() reflect.Type

func (ResourceGroupOutput) ToResourceGroupOutput added in v3.31.1

func (o ResourceGroupOutput) ToResourceGroupOutput() ResourceGroupOutput

func (ResourceGroupOutput) ToResourceGroupOutputWithContext added in v3.31.1

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

func (ResourceGroupOutput) ToResourceGroupPtrOutput added in v3.47.1

func (o ResourceGroupOutput) ToResourceGroupPtrOutput() ResourceGroupPtrOutput

func (ResourceGroupOutput) ToResourceGroupPtrOutputWithContext added in v3.47.1

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

type ResourceGroupPtrInput added in v3.47.1

type ResourceGroupPtrInput interface {
	pulumi.Input

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

type ResourceGroupPtrOutput added in v3.47.1

type ResourceGroupPtrOutput struct {
	*pulumi.OutputState
}

func (ResourceGroupPtrOutput) ElementType added in v3.47.1

func (ResourceGroupPtrOutput) ElementType() reflect.Type

func (ResourceGroupPtrOutput) ToResourceGroupPtrOutput added in v3.47.1

func (o ResourceGroupPtrOutput) ToResourceGroupPtrOutput() ResourceGroupPtrOutput

func (ResourceGroupPtrOutput) ToResourceGroupPtrOutputWithContext added in v3.47.1

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

type ResourceGroupState

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

func (ResourceGroupState) ElementType

func (ResourceGroupState) ElementType() reflect.Type

type ResourceGroupTemplateDeployment added in v3.24.0

type ResourceGroupTemplateDeployment struct {
	pulumi.CustomResourceState

	// The Debug Level which should be used for this Resource Group Template Deployment. Possible values are `none`, `requestContent`, `responseContent` and `requestContent, responseContent`.
	DebugLevel pulumi.StringPtrOutput `pulumi:"debugLevel"`
	// The Deployment Mode for this Resource Group Template Deployment. Possible values are `Complete` (where resources in the Resource Group not specified in the ARM Template will be destroyed) and `Incremental` (where resources are additive only).
	DeploymentMode pulumi.StringOutput `pulumi:"deploymentMode"`
	// The name which should be used for this Resource Group Template Deployment. Changing this forces a new Resource Group Template Deployment to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The JSON Content of the Outputs of the ARM Template Deployment.
	OutputContent pulumi.StringOutput `pulumi:"outputContent"`
	// The contents of the ARM Template parameters file - containing a JSON list of parameters.
	ParametersContent pulumi.StringOutput `pulumi:"parametersContent"`
	// The name of the Resource Group where the Resource Group Template Deployment should exist. Changing this forces a new Resource Group Template Deployment to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// A mapping of tags which should be assigned to the Resource Group Template Deployment.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// The contents of the ARM Template which should be deployed into this Resource Group. Cannot be specified with `templateSpecVersionId`.
	TemplateContent pulumi.StringOutput `pulumi:"templateContent"`
	// The ID of the Template Spec Version to deploy. Cannot be specified with `templateContent`.
	TemplateSpecVersionId pulumi.StringPtrOutput `pulumi:"templateSpecVersionId"`
}

Manages a Resource Group Template Deployment.

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

## Import

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

```sh

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

```

func GetResourceGroupTemplateDeployment added in v3.24.0

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 added in v3.24.0

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 added in v3.31.1

func (*ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentOutput added in v3.31.1

func (i *ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentOutput() ResourceGroupTemplateDeploymentOutput

func (*ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentOutputWithContext added in v3.31.1

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

func (*ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentPtrOutput added in v3.47.1

func (i *ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentPtrOutput() ResourceGroupTemplateDeploymentPtrOutput

func (*ResourceGroupTemplateDeployment) ToResourceGroupTemplateDeploymentPtrOutputWithContext added in v3.47.1

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

type ResourceGroupTemplateDeploymentArgs added in v3.24.0

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 added in v3.24.0

type ResourceGroupTemplateDeploymentArray added in v3.47.1

type ResourceGroupTemplateDeploymentArray []ResourceGroupTemplateDeploymentInput

func (ResourceGroupTemplateDeploymentArray) ElementType added in v3.47.1

func (ResourceGroupTemplateDeploymentArray) ToResourceGroupTemplateDeploymentArrayOutput added in v3.47.1

func (i ResourceGroupTemplateDeploymentArray) ToResourceGroupTemplateDeploymentArrayOutput() ResourceGroupTemplateDeploymentArrayOutput

func (ResourceGroupTemplateDeploymentArray) ToResourceGroupTemplateDeploymentArrayOutputWithContext added in v3.47.1

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

type ResourceGroupTemplateDeploymentArrayInput added in v3.47.1

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 added in v3.47.1

type ResourceGroupTemplateDeploymentArrayOutput struct{ *pulumi.OutputState }

func (ResourceGroupTemplateDeploymentArrayOutput) ElementType added in v3.47.1

func (ResourceGroupTemplateDeploymentArrayOutput) Index added in v3.47.1

func (ResourceGroupTemplateDeploymentArrayOutput) ToResourceGroupTemplateDeploymentArrayOutput added in v3.47.1

func (o ResourceGroupTemplateDeploymentArrayOutput) ToResourceGroupTemplateDeploymentArrayOutput() ResourceGroupTemplateDeploymentArrayOutput

func (ResourceGroupTemplateDeploymentArrayOutput) ToResourceGroupTemplateDeploymentArrayOutputWithContext added in v3.47.1

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

type ResourceGroupTemplateDeploymentInput added in v3.31.1

type ResourceGroupTemplateDeploymentInput interface {
	pulumi.Input

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

type ResourceGroupTemplateDeploymentMap added in v3.47.1

type ResourceGroupTemplateDeploymentMap map[string]ResourceGroupTemplateDeploymentInput

func (ResourceGroupTemplateDeploymentMap) ElementType added in v3.47.1

func (ResourceGroupTemplateDeploymentMap) ToResourceGroupTemplateDeploymentMapOutput added in v3.47.1

func (i ResourceGroupTemplateDeploymentMap) ToResourceGroupTemplateDeploymentMapOutput() ResourceGroupTemplateDeploymentMapOutput

func (ResourceGroupTemplateDeploymentMap) ToResourceGroupTemplateDeploymentMapOutputWithContext added in v3.47.1

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

type ResourceGroupTemplateDeploymentMapInput added in v3.47.1

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 added in v3.47.1

type ResourceGroupTemplateDeploymentMapOutput struct{ *pulumi.OutputState }

func (ResourceGroupTemplateDeploymentMapOutput) ElementType added in v3.47.1

func (ResourceGroupTemplateDeploymentMapOutput) MapIndex added in v3.47.1

func (ResourceGroupTemplateDeploymentMapOutput) ToResourceGroupTemplateDeploymentMapOutput added in v3.47.1

func (o ResourceGroupTemplateDeploymentMapOutput) ToResourceGroupTemplateDeploymentMapOutput() ResourceGroupTemplateDeploymentMapOutput

func (ResourceGroupTemplateDeploymentMapOutput) ToResourceGroupTemplateDeploymentMapOutputWithContext added in v3.47.1

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

type ResourceGroupTemplateDeploymentOutput added in v3.31.1

type ResourceGroupTemplateDeploymentOutput struct {
	*pulumi.OutputState
}

func (ResourceGroupTemplateDeploymentOutput) ElementType added in v3.31.1

func (ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentOutput added in v3.31.1

func (o ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentOutput() ResourceGroupTemplateDeploymentOutput

func (ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentOutputWithContext added in v3.31.1

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

func (ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentPtrOutput added in v3.47.1

func (o ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentPtrOutput() ResourceGroupTemplateDeploymentPtrOutput

func (ResourceGroupTemplateDeploymentOutput) ToResourceGroupTemplateDeploymentPtrOutputWithContext added in v3.47.1

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

type ResourceGroupTemplateDeploymentPtrInput added in v3.47.1

type ResourceGroupTemplateDeploymentPtrInput interface {
	pulumi.Input

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

type ResourceGroupTemplateDeploymentPtrOutput added in v3.47.1

type ResourceGroupTemplateDeploymentPtrOutput struct {
	*pulumi.OutputState
}

func (ResourceGroupTemplateDeploymentPtrOutput) ElementType added in v3.47.1

func (ResourceGroupTemplateDeploymentPtrOutput) ToResourceGroupTemplateDeploymentPtrOutput added in v3.47.1

func (o ResourceGroupTemplateDeploymentPtrOutput) ToResourceGroupTemplateDeploymentPtrOutput() ResourceGroupTemplateDeploymentPtrOutput

func (ResourceGroupTemplateDeploymentPtrOutput) ToResourceGroupTemplateDeploymentPtrOutputWithContext added in v3.47.1

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

type ResourceGroupTemplateDeploymentState added in v3.24.0

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 added in v3.24.0

type ResourceProviderRegistration added in v3.40.0

type ResourceProviderRegistration struct {
	pulumi.CustomResourceState

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

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

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

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

## Example Usage

```go package main

import (

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

)

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

```

## Import

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

```sh

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

```

func GetResourceProviderRegistration added in v3.40.0

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 added in v3.40.0

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 added in v3.40.0

func (*ResourceProviderRegistration) ElementType() reflect.Type

func (*ResourceProviderRegistration) ToResourceProviderRegistrationOutput added in v3.40.0

func (i *ResourceProviderRegistration) ToResourceProviderRegistrationOutput() ResourceProviderRegistrationOutput

func (*ResourceProviderRegistration) ToResourceProviderRegistrationOutputWithContext added in v3.40.0

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

func (*ResourceProviderRegistration) ToResourceProviderRegistrationPtrOutput added in v3.47.1

func (i *ResourceProviderRegistration) ToResourceProviderRegistrationPtrOutput() ResourceProviderRegistrationPtrOutput

func (*ResourceProviderRegistration) ToResourceProviderRegistrationPtrOutputWithContext added in v3.47.1

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

type ResourceProviderRegistrationArgs added in v3.40.0

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

The set of arguments for constructing a ResourceProviderRegistration resource.

func (ResourceProviderRegistrationArgs) ElementType added in v3.40.0

type ResourceProviderRegistrationArray added in v3.47.1

type ResourceProviderRegistrationArray []ResourceProviderRegistrationInput

func (ResourceProviderRegistrationArray) ElementType added in v3.47.1

func (ResourceProviderRegistrationArray) ToResourceProviderRegistrationArrayOutput added in v3.47.1

func (i ResourceProviderRegistrationArray) ToResourceProviderRegistrationArrayOutput() ResourceProviderRegistrationArrayOutput

func (ResourceProviderRegistrationArray) ToResourceProviderRegistrationArrayOutputWithContext added in v3.47.1

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

type ResourceProviderRegistrationArrayInput added in v3.47.1

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 added in v3.47.1

type ResourceProviderRegistrationArrayOutput struct{ *pulumi.OutputState }

func (ResourceProviderRegistrationArrayOutput) ElementType added in v3.47.1

func (ResourceProviderRegistrationArrayOutput) Index added in v3.47.1

func (ResourceProviderRegistrationArrayOutput) ToResourceProviderRegistrationArrayOutput added in v3.47.1

func (o ResourceProviderRegistrationArrayOutput) ToResourceProviderRegistrationArrayOutput() ResourceProviderRegistrationArrayOutput

func (ResourceProviderRegistrationArrayOutput) ToResourceProviderRegistrationArrayOutputWithContext added in v3.47.1

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

type ResourceProviderRegistrationInput added in v3.40.0

type ResourceProviderRegistrationInput interface {
	pulumi.Input

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

type ResourceProviderRegistrationMap added in v3.47.1

type ResourceProviderRegistrationMap map[string]ResourceProviderRegistrationInput

func (ResourceProviderRegistrationMap) ElementType added in v3.47.1

func (ResourceProviderRegistrationMap) ToResourceProviderRegistrationMapOutput added in v3.47.1

func (i ResourceProviderRegistrationMap) ToResourceProviderRegistrationMapOutput() ResourceProviderRegistrationMapOutput

func (ResourceProviderRegistrationMap) ToResourceProviderRegistrationMapOutputWithContext added in v3.47.1

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

type ResourceProviderRegistrationMapInput added in v3.47.1

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 added in v3.47.1

type ResourceProviderRegistrationMapOutput struct{ *pulumi.OutputState }

func (ResourceProviderRegistrationMapOutput) ElementType added in v3.47.1

func (ResourceProviderRegistrationMapOutput) MapIndex added in v3.47.1

func (ResourceProviderRegistrationMapOutput) ToResourceProviderRegistrationMapOutput added in v3.47.1

func (o ResourceProviderRegistrationMapOutput) ToResourceProviderRegistrationMapOutput() ResourceProviderRegistrationMapOutput

func (ResourceProviderRegistrationMapOutput) ToResourceProviderRegistrationMapOutputWithContext added in v3.47.1

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

type ResourceProviderRegistrationOutput added in v3.40.0

type ResourceProviderRegistrationOutput struct {
	*pulumi.OutputState
}

func (ResourceProviderRegistrationOutput) ElementType added in v3.40.0

func (ResourceProviderRegistrationOutput) ToResourceProviderRegistrationOutput added in v3.40.0

func (o ResourceProviderRegistrationOutput) ToResourceProviderRegistrationOutput() ResourceProviderRegistrationOutput

func (ResourceProviderRegistrationOutput) ToResourceProviderRegistrationOutputWithContext added in v3.40.0

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

func (ResourceProviderRegistrationOutput) ToResourceProviderRegistrationPtrOutput added in v3.47.1

func (o ResourceProviderRegistrationOutput) ToResourceProviderRegistrationPtrOutput() ResourceProviderRegistrationPtrOutput

func (ResourceProviderRegistrationOutput) ToResourceProviderRegistrationPtrOutputWithContext added in v3.47.1

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

type ResourceProviderRegistrationPtrInput added in v3.47.1

type ResourceProviderRegistrationPtrInput interface {
	pulumi.Input

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

type ResourceProviderRegistrationPtrOutput added in v3.47.1

type ResourceProviderRegistrationPtrOutput struct {
	*pulumi.OutputState
}

func (ResourceProviderRegistrationPtrOutput) ElementType added in v3.47.1

func (ResourceProviderRegistrationPtrOutput) ToResourceProviderRegistrationPtrOutput added in v3.47.1

func (o ResourceProviderRegistrationPtrOutput) ToResourceProviderRegistrationPtrOutput() ResourceProviderRegistrationPtrOutput

func (ResourceProviderRegistrationPtrOutput) ToResourceProviderRegistrationPtrOutputWithContext added in v3.47.1

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

type ResourceProviderRegistrationState added in v3.40.0

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

func (ResourceProviderRegistrationState) ElementType added in v3.40.0

type Subscription added in v3.50.0

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"`
	BillingScopeId pulumi.StringPtrOutput `pulumi:"billingScopeId"`
	// The ID of the Subscription. Cannot be specified with `billingAccount`, `billingProfile`, `enrollmentAccount`, or `invoiceSection` Changing this forces a new Subscription to be created.
	SubscriptionId pulumi.StringOutput `pulumi:"subscriptionId"`
	// The Name of the Subscription. This is the Display Name in the portal.
	SubscriptionName pulumi.StringOutput    `pulumi:"subscriptionName"`
	Tags             pulumi.StringMapOutput `pulumi:"tags"`
	// The ID of the Tenant to which the subscription belongs.
	TenantId pulumi.StringOutput `pulumi:"tenantId"`
	// The workload type of the Subscription.  Possible values are `Production` (default) and `DevTest`. Changing this forces a new Subscription to be created.
	Workload pulumi.StringPtrOutput `pulumi:"workload"`
}

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

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

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

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

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

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/billing"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi/sdk/v2/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/v3/go/azure/billing"
"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

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

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

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
"github.com/pulumi/pulumi/sdk/v2/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. e.g.

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 added in v3.50.0

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 added in v3.50.0

func (*Subscription) ElementType() reflect.Type

func (*Subscription) ToSubscriptionOutput added in v3.50.0

func (i *Subscription) ToSubscriptionOutput() SubscriptionOutput

func (*Subscription) ToSubscriptionOutputWithContext added in v3.50.0

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

func (*Subscription) ToSubscriptionPtrOutput added in v3.50.0

func (i *Subscription) ToSubscriptionPtrOutput() SubscriptionPtrOutput

func (*Subscription) ToSubscriptionPtrOutputWithContext added in v3.50.0

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

type SubscriptionArgs added in v3.50.0

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
	BillingScopeId pulumi.StringPtrInput
	// The ID of the Subscription. Cannot be specified with `billingAccount`, `billingProfile`, `enrollmentAccount`, or `invoiceSection` Changing this forces a new Subscription to be created.
	SubscriptionId pulumi.StringPtrInput
	// The Name of the Subscription. This is the Display Name in the portal.
	SubscriptionName pulumi.StringInput
	// The workload type of the Subscription.  Possible values are `Production` (default) and `DevTest`. Changing this forces a new Subscription to be created.
	Workload pulumi.StringPtrInput
}

The set of arguments for constructing a Subscription resource.

func (SubscriptionArgs) ElementType added in v3.50.0

func (SubscriptionArgs) ElementType() reflect.Type

type SubscriptionArray added in v3.50.0

type SubscriptionArray []SubscriptionInput

func (SubscriptionArray) ElementType added in v3.50.0

func (SubscriptionArray) ElementType() reflect.Type

func (SubscriptionArray) ToSubscriptionArrayOutput added in v3.50.0

func (i SubscriptionArray) ToSubscriptionArrayOutput() SubscriptionArrayOutput

func (SubscriptionArray) ToSubscriptionArrayOutputWithContext added in v3.50.0

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

type SubscriptionArrayInput added in v3.50.0

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 added in v3.50.0

type SubscriptionArrayOutput struct{ *pulumi.OutputState }

func (SubscriptionArrayOutput) ElementType added in v3.50.0

func (SubscriptionArrayOutput) ElementType() reflect.Type

func (SubscriptionArrayOutput) Index added in v3.50.0

func (SubscriptionArrayOutput) ToSubscriptionArrayOutput added in v3.50.0

func (o SubscriptionArrayOutput) ToSubscriptionArrayOutput() SubscriptionArrayOutput

func (SubscriptionArrayOutput) ToSubscriptionArrayOutputWithContext added in v3.50.0

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

type SubscriptionInput added in v3.50.0

type SubscriptionInput interface {
	pulumi.Input

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

type SubscriptionMap added in v3.50.0

type SubscriptionMap map[string]SubscriptionInput

func (SubscriptionMap) ElementType added in v3.50.0

func (SubscriptionMap) ElementType() reflect.Type

func (SubscriptionMap) ToSubscriptionMapOutput added in v3.50.0

func (i SubscriptionMap) ToSubscriptionMapOutput() SubscriptionMapOutput

func (SubscriptionMap) ToSubscriptionMapOutputWithContext added in v3.50.0

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

type SubscriptionMapInput added in v3.50.0

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 added in v3.50.0

type SubscriptionMapOutput struct{ *pulumi.OutputState }

func (SubscriptionMapOutput) ElementType added in v3.50.0

func (SubscriptionMapOutput) ElementType() reflect.Type

func (SubscriptionMapOutput) MapIndex added in v3.50.0

func (SubscriptionMapOutput) ToSubscriptionMapOutput added in v3.50.0

func (o SubscriptionMapOutput) ToSubscriptionMapOutput() SubscriptionMapOutput

func (SubscriptionMapOutput) ToSubscriptionMapOutputWithContext added in v3.50.0

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

type SubscriptionOutput added in v3.50.0

type SubscriptionOutput struct {
	*pulumi.OutputState
}

func (SubscriptionOutput) ElementType added in v3.50.0

func (SubscriptionOutput) ElementType() reflect.Type

func (SubscriptionOutput) ToSubscriptionOutput added in v3.50.0

func (o SubscriptionOutput) ToSubscriptionOutput() SubscriptionOutput

func (SubscriptionOutput) ToSubscriptionOutputWithContext added in v3.50.0

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

func (SubscriptionOutput) ToSubscriptionPtrOutput added in v3.50.0

func (o SubscriptionOutput) ToSubscriptionPtrOutput() SubscriptionPtrOutput

func (SubscriptionOutput) ToSubscriptionPtrOutputWithContext added in v3.50.0

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

type SubscriptionPtrInput added in v3.50.0

type SubscriptionPtrInput interface {
	pulumi.Input

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

type SubscriptionPtrOutput added in v3.50.0

type SubscriptionPtrOutput struct {
	*pulumi.OutputState
}

func (SubscriptionPtrOutput) ElementType added in v3.50.0

func (SubscriptionPtrOutput) ElementType() reflect.Type

func (SubscriptionPtrOutput) ToSubscriptionPtrOutput added in v3.50.0

func (o SubscriptionPtrOutput) ToSubscriptionPtrOutput() SubscriptionPtrOutput

func (SubscriptionPtrOutput) ToSubscriptionPtrOutputWithContext added in v3.50.0

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

type SubscriptionState added in v3.50.0

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
	BillingScopeId pulumi.StringPtrInput
	// The ID of the Subscription. Cannot be specified with `billingAccount`, `billingProfile`, `enrollmentAccount`, or `invoiceSection` Changing this forces a new Subscription to be created.
	SubscriptionId pulumi.StringPtrInput
	// The Name of the Subscription. This is the Display Name in the portal.
	SubscriptionName pulumi.StringPtrInput
	Tags             pulumi.StringMapInput
	// The ID of the Tenant to which the subscription belongs.
	TenantId pulumi.StringPtrInput
	// The workload type of the Subscription.  Possible values are `Production` (default) and `DevTest`. Changing this forces a new Subscription to be created.
	Workload pulumi.StringPtrInput
}

func (SubscriptionState) ElementType added in v3.50.0

func (SubscriptionState) ElementType() reflect.Type

type SubscriptionTemplateDeployment added in v3.24.0

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/v3/go/azure/core"
"github.com/pulumi/pulumi/sdk/v2/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 added in v3.24.0

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 added in v3.24.0

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 added in v3.31.1

func (*SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentOutput added in v3.31.1

func (i *SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentOutput() SubscriptionTemplateDeploymentOutput

func (*SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentOutputWithContext added in v3.31.1

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

func (*SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentPtrOutput added in v3.47.1

func (i *SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentPtrOutput() SubscriptionTemplateDeploymentPtrOutput

func (*SubscriptionTemplateDeployment) ToSubscriptionTemplateDeploymentPtrOutputWithContext added in v3.47.1

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

type SubscriptionTemplateDeploymentArgs added in v3.24.0

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 added in v3.24.0

type SubscriptionTemplateDeploymentArray added in v3.47.1

type SubscriptionTemplateDeploymentArray []SubscriptionTemplateDeploymentInput

func (SubscriptionTemplateDeploymentArray) ElementType added in v3.47.1

func (SubscriptionTemplateDeploymentArray) ToSubscriptionTemplateDeploymentArrayOutput added in v3.47.1

func (i SubscriptionTemplateDeploymentArray) ToSubscriptionTemplateDeploymentArrayOutput() SubscriptionTemplateDeploymentArrayOutput

func (SubscriptionTemplateDeploymentArray) ToSubscriptionTemplateDeploymentArrayOutputWithContext added in v3.47.1

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

type SubscriptionTemplateDeploymentArrayInput added in v3.47.1

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 added in v3.47.1

type SubscriptionTemplateDeploymentArrayOutput struct{ *pulumi.OutputState }

func (SubscriptionTemplateDeploymentArrayOutput) ElementType added in v3.47.1

func (SubscriptionTemplateDeploymentArrayOutput) Index added in v3.47.1

func (SubscriptionTemplateDeploymentArrayOutput) ToSubscriptionTemplateDeploymentArrayOutput added in v3.47.1

func (o SubscriptionTemplateDeploymentArrayOutput) ToSubscriptionTemplateDeploymentArrayOutput() SubscriptionTemplateDeploymentArrayOutput

func (SubscriptionTemplateDeploymentArrayOutput) ToSubscriptionTemplateDeploymentArrayOutputWithContext added in v3.47.1

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

type SubscriptionTemplateDeploymentInput added in v3.31.1

type SubscriptionTemplateDeploymentInput interface {
	pulumi.Input

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

type SubscriptionTemplateDeploymentMap added in v3.47.1

type SubscriptionTemplateDeploymentMap map[string]SubscriptionTemplateDeploymentInput

func (SubscriptionTemplateDeploymentMap) ElementType added in v3.47.1

func (SubscriptionTemplateDeploymentMap) ToSubscriptionTemplateDeploymentMapOutput added in v3.47.1

func (i SubscriptionTemplateDeploymentMap) ToSubscriptionTemplateDeploymentMapOutput() SubscriptionTemplateDeploymentMapOutput

func (SubscriptionTemplateDeploymentMap) ToSubscriptionTemplateDeploymentMapOutputWithContext added in v3.47.1

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

type SubscriptionTemplateDeploymentMapInput added in v3.47.1

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 added in v3.47.1

type SubscriptionTemplateDeploymentMapOutput struct{ *pulumi.OutputState }

func (SubscriptionTemplateDeploymentMapOutput) ElementType added in v3.47.1

func (SubscriptionTemplateDeploymentMapOutput) MapIndex added in v3.47.1

func (SubscriptionTemplateDeploymentMapOutput) ToSubscriptionTemplateDeploymentMapOutput added in v3.47.1

func (o SubscriptionTemplateDeploymentMapOutput) ToSubscriptionTemplateDeploymentMapOutput() SubscriptionTemplateDeploymentMapOutput

func (SubscriptionTemplateDeploymentMapOutput) ToSubscriptionTemplateDeploymentMapOutputWithContext added in v3.47.1

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

type SubscriptionTemplateDeploymentOutput added in v3.31.1

type SubscriptionTemplateDeploymentOutput struct {
	*pulumi.OutputState
}

func (SubscriptionTemplateDeploymentOutput) ElementType added in v3.31.1

func (SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentOutput added in v3.31.1

func (o SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentOutput() SubscriptionTemplateDeploymentOutput

func (SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentOutputWithContext added in v3.31.1

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

func (SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentPtrOutput added in v3.47.1

func (o SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentPtrOutput() SubscriptionTemplateDeploymentPtrOutput

func (SubscriptionTemplateDeploymentOutput) ToSubscriptionTemplateDeploymentPtrOutputWithContext added in v3.47.1

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

type SubscriptionTemplateDeploymentPtrInput added in v3.47.1

type SubscriptionTemplateDeploymentPtrInput interface {
	pulumi.Input

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

type SubscriptionTemplateDeploymentPtrOutput added in v3.47.1

type SubscriptionTemplateDeploymentPtrOutput struct {
	*pulumi.OutputState
}

func (SubscriptionTemplateDeploymentPtrOutput) ElementType added in v3.47.1

func (SubscriptionTemplateDeploymentPtrOutput) ToSubscriptionTemplateDeploymentPtrOutput added in v3.47.1

func (o SubscriptionTemplateDeploymentPtrOutput) ToSubscriptionTemplateDeploymentPtrOutput() SubscriptionTemplateDeploymentPtrOutput

func (SubscriptionTemplateDeploymentPtrOutput) ToSubscriptionTemplateDeploymentPtrOutputWithContext added in v3.47.1

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

type SubscriptionTemplateDeploymentState added in v3.24.0

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 added in v3.24.0

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/v3/go/azure/core"
"github.com/pulumi/pulumi/sdk/v2/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 added in v3.31.1

func (*TemplateDeployment) ElementType() reflect.Type

func (*TemplateDeployment) ToTemplateDeploymentOutput added in v3.31.1

func (i *TemplateDeployment) ToTemplateDeploymentOutput() TemplateDeploymentOutput

func (*TemplateDeployment) ToTemplateDeploymentOutputWithContext added in v3.31.1

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

func (*TemplateDeployment) ToTemplateDeploymentPtrOutput added in v3.47.1

func (i *TemplateDeployment) ToTemplateDeploymentPtrOutput() TemplateDeploymentPtrOutput

func (*TemplateDeployment) ToTemplateDeploymentPtrOutputWithContext added in v3.47.1

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

type TemplateDeploymentArgs

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

The set of arguments for constructing a TemplateDeployment resource.

func (TemplateDeploymentArgs) ElementType

func (TemplateDeploymentArgs) ElementType() reflect.Type

type TemplateDeploymentArray added in v3.47.1

type TemplateDeploymentArray []TemplateDeploymentInput

func (TemplateDeploymentArray) ElementType added in v3.47.1

func (TemplateDeploymentArray) ElementType() reflect.Type

func (TemplateDeploymentArray) ToTemplateDeploymentArrayOutput added in v3.47.1

func (i TemplateDeploymentArray) ToTemplateDeploymentArrayOutput() TemplateDeploymentArrayOutput

func (TemplateDeploymentArray) ToTemplateDeploymentArrayOutputWithContext added in v3.47.1

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

type TemplateDeploymentArrayInput added in v3.47.1

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 added in v3.47.1

type TemplateDeploymentArrayOutput struct{ *pulumi.OutputState }

func (TemplateDeploymentArrayOutput) ElementType added in v3.47.1

func (TemplateDeploymentArrayOutput) Index added in v3.47.1

func (TemplateDeploymentArrayOutput) ToTemplateDeploymentArrayOutput added in v3.47.1

func (o TemplateDeploymentArrayOutput) ToTemplateDeploymentArrayOutput() TemplateDeploymentArrayOutput

func (TemplateDeploymentArrayOutput) ToTemplateDeploymentArrayOutputWithContext added in v3.47.1

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

type TemplateDeploymentInput added in v3.31.1

type TemplateDeploymentInput interface {
	pulumi.Input

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

type TemplateDeploymentMap added in v3.47.1

type TemplateDeploymentMap map[string]TemplateDeploymentInput

func (TemplateDeploymentMap) ElementType added in v3.47.1

func (TemplateDeploymentMap) ElementType() reflect.Type

func (TemplateDeploymentMap) ToTemplateDeploymentMapOutput added in v3.47.1

func (i TemplateDeploymentMap) ToTemplateDeploymentMapOutput() TemplateDeploymentMapOutput

func (TemplateDeploymentMap) ToTemplateDeploymentMapOutputWithContext added in v3.47.1

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

type TemplateDeploymentMapInput added in v3.47.1

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 added in v3.47.1

type TemplateDeploymentMapOutput struct{ *pulumi.OutputState }

func (TemplateDeploymentMapOutput) ElementType added in v3.47.1

func (TemplateDeploymentMapOutput) MapIndex added in v3.47.1

func (TemplateDeploymentMapOutput) ToTemplateDeploymentMapOutput added in v3.47.1

func (o TemplateDeploymentMapOutput) ToTemplateDeploymentMapOutput() TemplateDeploymentMapOutput

func (TemplateDeploymentMapOutput) ToTemplateDeploymentMapOutputWithContext added in v3.47.1

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

type TemplateDeploymentOutput added in v3.31.1

type TemplateDeploymentOutput struct {
	*pulumi.OutputState
}

func (TemplateDeploymentOutput) ElementType added in v3.31.1

func (TemplateDeploymentOutput) ElementType() reflect.Type

func (TemplateDeploymentOutput) ToTemplateDeploymentOutput added in v3.31.1

func (o TemplateDeploymentOutput) ToTemplateDeploymentOutput() TemplateDeploymentOutput

func (TemplateDeploymentOutput) ToTemplateDeploymentOutputWithContext added in v3.31.1

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

func (TemplateDeploymentOutput) ToTemplateDeploymentPtrOutput added in v3.47.1

func (o TemplateDeploymentOutput) ToTemplateDeploymentPtrOutput() TemplateDeploymentPtrOutput

func (TemplateDeploymentOutput) ToTemplateDeploymentPtrOutputWithContext added in v3.47.1

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

type TemplateDeploymentPtrInput added in v3.47.1

type TemplateDeploymentPtrInput interface {
	pulumi.Input

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

type TemplateDeploymentPtrOutput added in v3.47.1

type TemplateDeploymentPtrOutput struct {
	*pulumi.OutputState
}

func (TemplateDeploymentPtrOutput) ElementType added in v3.47.1

func (TemplateDeploymentPtrOutput) ToTemplateDeploymentPtrOutput added in v3.47.1

func (o TemplateDeploymentPtrOutput) ToTemplateDeploymentPtrOutput() TemplateDeploymentPtrOutput

func (TemplateDeploymentPtrOutput) ToTemplateDeploymentPtrOutputWithContext added in v3.47.1

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

type TemplateDeploymentState

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

func (TemplateDeploymentState) ElementType

func (TemplateDeploymentState) ElementType() reflect.Type

type TenantTemplateDeployment added in v3.53.0

type TenantTemplateDeployment struct {
	pulumi.CustomResourceState

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

## Import

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

```sh

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

```

func GetTenantTemplateDeployment added in v3.53.0

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 added in v3.53.0

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 added in v3.53.0

func (*TenantTemplateDeployment) ElementType() reflect.Type

func (*TenantTemplateDeployment) ToTenantTemplateDeploymentOutput added in v3.53.0

func (i *TenantTemplateDeployment) ToTenantTemplateDeploymentOutput() TenantTemplateDeploymentOutput

func (*TenantTemplateDeployment) ToTenantTemplateDeploymentOutputWithContext added in v3.53.0

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

func (*TenantTemplateDeployment) ToTenantTemplateDeploymentPtrOutput added in v3.53.0

func (i *TenantTemplateDeployment) ToTenantTemplateDeploymentPtrOutput() TenantTemplateDeploymentPtrOutput

func (*TenantTemplateDeployment) ToTenantTemplateDeploymentPtrOutputWithContext added in v3.53.0

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

type TenantTemplateDeploymentArgs added in v3.53.0

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 added in v3.53.0

type TenantTemplateDeploymentArray added in v3.53.0

type TenantTemplateDeploymentArray []TenantTemplateDeploymentInput

func (TenantTemplateDeploymentArray) ElementType added in v3.53.0

func (TenantTemplateDeploymentArray) ToTenantTemplateDeploymentArrayOutput added in v3.53.0

func (i TenantTemplateDeploymentArray) ToTenantTemplateDeploymentArrayOutput() TenantTemplateDeploymentArrayOutput

func (TenantTemplateDeploymentArray) ToTenantTemplateDeploymentArrayOutputWithContext added in v3.53.0

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

type TenantTemplateDeploymentArrayInput added in v3.53.0

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 added in v3.53.0

type TenantTemplateDeploymentArrayOutput struct{ *pulumi.OutputState }

func (TenantTemplateDeploymentArrayOutput) ElementType added in v3.53.0

func (TenantTemplateDeploymentArrayOutput) Index added in v3.53.0

func (TenantTemplateDeploymentArrayOutput) ToTenantTemplateDeploymentArrayOutput added in v3.53.0

func (o TenantTemplateDeploymentArrayOutput) ToTenantTemplateDeploymentArrayOutput() TenantTemplateDeploymentArrayOutput

func (TenantTemplateDeploymentArrayOutput) ToTenantTemplateDeploymentArrayOutputWithContext added in v3.53.0

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

type TenantTemplateDeploymentInput added in v3.53.0

type TenantTemplateDeploymentInput interface {
	pulumi.Input

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

type TenantTemplateDeploymentMap added in v3.53.0

type TenantTemplateDeploymentMap map[string]TenantTemplateDeploymentInput

func (TenantTemplateDeploymentMap) ElementType added in v3.53.0

func (TenantTemplateDeploymentMap) ToTenantTemplateDeploymentMapOutput added in v3.53.0

func (i TenantTemplateDeploymentMap) ToTenantTemplateDeploymentMapOutput() TenantTemplateDeploymentMapOutput

func (TenantTemplateDeploymentMap) ToTenantTemplateDeploymentMapOutputWithContext added in v3.53.0

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

type TenantTemplateDeploymentMapInput added in v3.53.0

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 added in v3.53.0

type TenantTemplateDeploymentMapOutput struct{ *pulumi.OutputState }

func (TenantTemplateDeploymentMapOutput) ElementType added in v3.53.0

func (TenantTemplateDeploymentMapOutput) MapIndex added in v3.53.0

func (TenantTemplateDeploymentMapOutput) ToTenantTemplateDeploymentMapOutput added in v3.53.0

func (o TenantTemplateDeploymentMapOutput) ToTenantTemplateDeploymentMapOutput() TenantTemplateDeploymentMapOutput

func (TenantTemplateDeploymentMapOutput) ToTenantTemplateDeploymentMapOutputWithContext added in v3.53.0

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

type TenantTemplateDeploymentOutput added in v3.53.0

type TenantTemplateDeploymentOutput struct {
	*pulumi.OutputState
}

func (TenantTemplateDeploymentOutput) ElementType added in v3.53.0

func (TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentOutput added in v3.53.0

func (o TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentOutput() TenantTemplateDeploymentOutput

func (TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentOutputWithContext added in v3.53.0

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

func (TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentPtrOutput added in v3.53.0

func (o TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentPtrOutput() TenantTemplateDeploymentPtrOutput

func (TenantTemplateDeploymentOutput) ToTenantTemplateDeploymentPtrOutputWithContext added in v3.53.0

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

type TenantTemplateDeploymentPtrInput added in v3.53.0

type TenantTemplateDeploymentPtrInput interface {
	pulumi.Input

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

type TenantTemplateDeploymentPtrOutput added in v3.53.0

type TenantTemplateDeploymentPtrOutput struct {
	*pulumi.OutputState
}

func (TenantTemplateDeploymentPtrOutput) ElementType added in v3.53.0

func (TenantTemplateDeploymentPtrOutput) ToTenantTemplateDeploymentPtrOutput added in v3.53.0

func (o TenantTemplateDeploymentPtrOutput) ToTenantTemplateDeploymentPtrOutput() TenantTemplateDeploymentPtrOutput

func (TenantTemplateDeploymentPtrOutput) ToTenantTemplateDeploymentPtrOutputWithContext added in v3.53.0

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

type TenantTemplateDeploymentState added in v3.53.0

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 added in v3.53.0

Jump to

Keyboard shortcuts

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