DeploymentStackAtResourceGroupArgs

data class DeploymentStackAtResourceGroupArgs(val actionOnUnmanage: Output<DeploymentStackPropertiesActionOnUnmanageArgs>? = null, val debugSetting: Output<DeploymentStacksDebugSettingArgs>? = null, val denySettings: Output<DenySettingsArgs>? = null, val deploymentScope: Output<String>? = null, val deploymentStackName: Output<String>? = null, val description: Output<String>? = null, val location: Output<String>? = null, val parameters: Output<Any>? = null, val parametersLink: Output<DeploymentStacksParametersLinkArgs>? = null, val resourceGroupName: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val template: Output<Any>? = null, val templateLink: Output<DeploymentStacksTemplateLinkArgs>? = null) : ConvertibleToJava<DeploymentStackAtResourceGroupArgs>

Deployment stack object. Uses Azure REST API version 2022-08-01-preview. Other available API versions: 2024-03-01.

Example Usage

DeploymentStacksCreateOrUpdate

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var deploymentStackAtResourceGroup = new AzureNative.Resources.DeploymentStackAtResourceGroup("deploymentStackAtResourceGroup", new()
{
ActionOnUnmanage = new AzureNative.Resources.Inputs.DeploymentStackPropertiesActionOnUnmanageArgs
{
ManagementGroups = AzureNative.Resources.DeploymentStacksDeleteDetachEnum.Detach,
ResourceGroups = AzureNative.Resources.DeploymentStacksDeleteDetachEnum.Delete,
Resources = AzureNative.Resources.DeploymentStacksDeleteDetachEnum.Delete,
},
DenySettings = new AzureNative.Resources.Inputs.DenySettingsArgs
{
ApplyToChildScopes = false,
ExcludedActions = new[]
{
"action",
},
ExcludedPrincipals = new[]
{
"principal",
},
Mode = AzureNative.Resources.DenySettingsMode.DenyDelete,
},
DeploymentStackName = "simpleDeploymentStack",
Location = "eastus",
Parameters = new Dictionary<string, object?>
{
["parameter1"] = new Dictionary<string, object?>
{
["value"] = "a string",
},
},
ResourceGroupName = "deploymentStacksRG",
Tags =
{
{ "tagkey", "tagVal" },
},
});
});
package main
import (
resources "github.com/pulumi/pulumi-azure-native-sdk/resources/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := resources.NewDeploymentStackAtResourceGroup(ctx, "deploymentStackAtResourceGroup", &resources.DeploymentStackAtResourceGroupArgs{
ActionOnUnmanage: &resources.DeploymentStackPropertiesActionOnUnmanageArgs{
ManagementGroups: pulumi.String(resources.DeploymentStacksDeleteDetachEnumDetach),
ResourceGroups: pulumi.String(resources.DeploymentStacksDeleteDetachEnumDelete),
Resources: pulumi.String(resources.DeploymentStacksDeleteDetachEnumDelete),
},
DenySettings: &resources.DenySettingsArgs{
ApplyToChildScopes: pulumi.Bool(false),
ExcludedActions: pulumi.StringArray{
pulumi.String("action"),
},
ExcludedPrincipals: pulumi.StringArray{
pulumi.String("principal"),
},
Mode: pulumi.String(resources.DenySettingsModeDenyDelete),
},
DeploymentStackName: pulumi.String("simpleDeploymentStack"),
Location: pulumi.String("eastus"),
Parameters: pulumi.Any(map[string]interface{}{
"parameter1": map[string]interface{}{
"value": "a string",
},
}),
ResourceGroupName: pulumi.String("deploymentStacksRG"),
Tags: pulumi.StringMap{
"tagkey": pulumi.String("tagVal"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.resources.DeploymentStackAtResourceGroup;
import com.pulumi.azurenative.resources.DeploymentStackAtResourceGroupArgs;
import com.pulumi.azurenative.resources.inputs.DeploymentStackPropertiesActionOnUnmanageArgs;
import com.pulumi.azurenative.resources.inputs.DenySettingsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var deploymentStackAtResourceGroup = new DeploymentStackAtResourceGroup("deploymentStackAtResourceGroup", DeploymentStackAtResourceGroupArgs.builder()
.actionOnUnmanage(DeploymentStackPropertiesActionOnUnmanageArgs.builder()
.managementGroups("detach")
.resourceGroups("delete")
.resources("delete")
.build())
.denySettings(DenySettingsArgs.builder()
.applyToChildScopes(false)
.excludedActions("action")
.excludedPrincipals("principal")
.mode("denyDelete")
.build())
.deploymentStackName("simpleDeploymentStack")
.location("eastus")
.parameters(Map.of("parameter1", Map.of("value", "a string")))
.resourceGroupName("deploymentStacksRG")
.tags(Map.of("tagkey", "tagVal"))
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:resources:DeploymentStackAtResourceGroup simpleDeploymentStack /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Resources/deploymentStacks/{deploymentStackName}

Constructors

Link copied to clipboard
constructor(actionOnUnmanage: Output<DeploymentStackPropertiesActionOnUnmanageArgs>? = null, debugSetting: Output<DeploymentStacksDebugSettingArgs>? = null, denySettings: Output<DenySettingsArgs>? = null, deploymentScope: Output<String>? = null, deploymentStackName: Output<String>? = null, description: Output<String>? = null, location: Output<String>? = null, parameters: Output<Any>? = null, parametersLink: Output<DeploymentStacksParametersLinkArgs>? = null, resourceGroupName: Output<String>? = null, tags: Output<Map<String, String>>? = null, template: Output<Any>? = null, templateLink: Output<DeploymentStacksTemplateLinkArgs>? = null)

Properties

Link copied to clipboard

Defines the behavior of resources that are not managed immediately after the stack is updated.

Link copied to clipboard

The debug setting of the deployment.

Link copied to clipboard
val denySettings: Output<DenySettingsArgs>? = null

Defines how resources deployed by the stack are locked.

Link copied to clipboard
val deploymentScope: Output<String>? = null

The scope at which the initial deployment should be created. If a scope is not specified, it will default to the scope of the deployment stack. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroupId}'), subscription (format: '/subscriptions/{subscriptionId}'), resource group (format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}').

Link copied to clipboard
val deploymentStackName: Output<String>? = null

Name of the deployment stack.

Link copied to clipboard
val description: Output<String>? = null

Deployment stack description.

Link copied to clipboard
val location: Output<String>? = null

The location of the deployment stack. It cannot be changed after creation. It must be one of the supported Azure locations.

Link copied to clipboard
val parameters: Output<Any>? = null

Name and value pairs that define the deployment parameters for the template. Use this element when providing the parameter values directly in the request, rather than linking to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string.

Link copied to clipboard

The URI of parameters file. Use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both.

Link copied to clipboard
val resourceGroupName: Output<String>? = null

The name of the resource group. The name is case insensitive.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Deployment stack resource tags.

Link copied to clipboard
val template: Output<Any>? = null

The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both.

Link copied to clipboard

The URI of the template. Use either the templateLink property or the template property, but not both.

Functions

Link copied to clipboard
open override fun toJava(): DeploymentStackAtResourceGroupArgs