EnvironmentV3Args

data class EnvironmentV3Args(val allowNewPrivateEndpointConnections: Output<Boolean>? = null, val clusterSettings: Output<List<EnvironmentV3ClusterSettingArgs>>? = null, val dedicatedHostCount: Output<Int>? = null, val internalLoadBalancingMode: Output<String>? = null, val name: Output<String>? = null, val remoteDebuggingEnabled: Output<Boolean>? = null, val resourceGroupName: Output<String>? = null, val subnetId: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val zoneRedundant: Output<Boolean>? = null) : ConvertibleToJava<EnvironmentV3Args>

Manages a 3rd Generation (v3) App Service Environment.

Example Usage

This example provisions an App Service Environment V3. Additional examples of how to use the azure.appservice.EnvironmentV3 resource can be found in the ./examples/app-service-environment-v3 directory within the GitHub Repository.

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.network.VirtualNetwork;
import com.pulumi.azure.network.VirtualNetworkArgs;
import com.pulumi.azure.network.Subnet;
import com.pulumi.azure.network.SubnetArgs;
import com.pulumi.azure.network.inputs.SubnetDelegationArgs;
import com.pulumi.azure.network.inputs.SubnetDelegationServiceDelegationArgs;
import com.pulumi.azure.appservice.EnvironmentV3;
import com.pulumi.azure.appservice.EnvironmentV3Args;
import com.pulumi.azure.appservice.inputs.EnvironmentV3ClusterSettingArgs;
import com.pulumi.azure.appservice.ServicePlan;
import com.pulumi.azure.appservice.ServicePlanArgs;
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 example = new ResourceGroup("example", ResourceGroupArgs.builder()
.name("exampleRG1")
.location("West Europe")
.build());
var exampleVirtualNetwork = new VirtualNetwork("exampleVirtualNetwork", VirtualNetworkArgs.builder()
.name("example-vnet")
.location(example.location())
.resourceGroupName(example.name())
.addressSpaces("10.0.0.0/16")
.build());
var exampleSubnet = new Subnet("exampleSubnet", SubnetArgs.builder()
.name("example-subnet")
.resourceGroupName(example.name())
.virtualNetworkName(exampleVirtualNetwork.name())
.addressPrefixes("10.0.2.0/24")
.delegations(SubnetDelegationArgs.builder()
.name("Microsoft.Web.hostingEnvironments")
.serviceDelegation(SubnetDelegationServiceDelegationArgs.builder()
.name("Microsoft.Web/hostingEnvironments")
.actions("Microsoft.Network/virtualNetworks/subnets/action")
.build())
.build())
.build());
var exampleEnvironmentV3 = new EnvironmentV3("exampleEnvironmentV3", EnvironmentV3Args.builder()
.name("example-asev3")
.resourceGroupName(example.name())
.subnetId(exampleSubnet.id())
.internalLoadBalancingMode("Web, Publishing")
.clusterSettings(
EnvironmentV3ClusterSettingArgs.builder()
.name("DisableTls1.0")
.value("1")
.build(),
EnvironmentV3ClusterSettingArgs.builder()
.name("InternalEncryption")
.value("true")
.build(),
EnvironmentV3ClusterSettingArgs.builder()
.name("FrontEndSSLCipherSuiteOrder")
.value("TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256")
.build())
.tags(Map.ofEntries(
Map.entry("env", "production"),
Map.entry("terraformed", "true")
))
.build());
var exampleServicePlan = new ServicePlan("exampleServicePlan", ServicePlanArgs.builder()
.name("example")
.resourceGroupName(example.name())
.location(example.location())
.osType("Linux")
.skuName("I1v2")
.appServiceEnvironmentId(exampleEnvironmentV3.id())
.build());
}
}

Import

A 3rd Generation (v3) App Service Environment can be imported using the resource id, e.g.

$ pulumi import azure:appservice/environmentV3:EnvironmentV3 myAppServiceEnv /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Web/hostingEnvironments/myAppServiceEnv

Constructors

Link copied to clipboard
fun EnvironmentV3Args(allowNewPrivateEndpointConnections: Output<Boolean>? = null, clusterSettings: Output<List<EnvironmentV3ClusterSettingArgs>>? = null, dedicatedHostCount: Output<Int>? = null, internalLoadBalancingMode: Output<String>? = null, name: Output<String>? = null, remoteDebuggingEnabled: Output<Boolean>? = null, resourceGroupName: Output<String>? = null, subnetId: Output<String>? = null, tags: Output<Map<String, String>>? = null, zoneRedundant: Output<Boolean>? = null)

Functions

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

Properties

Link copied to clipboard

Should new Private Endpoint Connections be allowed. Defaults to true.

Link copied to clipboard

Zero or more cluster_setting blocks as defined below.

Link copied to clipboard
val dedicatedHostCount: Output<Int>? = null

This ASEv3 should use dedicated Hosts. Possible values are 2. Changing this forces a new resource to be created.

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

Specifies which endpoints to serve internally in the Virtual Network for the App Service Environment. Possible values are None (for an External VIP Type), and "Web, Publishing" (for an Internal VIP Type). Defaults to None. Changing this forces a new resource to be created.

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

The name of the App Service Environment. Changing this forces a new resource to be created.

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

The name of the Resource Group where the App Service Environment exists. Defaults to the Resource Group of the Subnet (specified by subnet_id). Changing this forces a new resource to be created.

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

The ID of the Subnet which the App Service Environment should be connected to. Changing this forces a new resource to be created.

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

Set to true to deploy the ASEv3 with availability zones supported. Zonal ASEs can be deployed in some regions, you can refer to Availability Zone support for App Service Environments. You can only set either dedicated_host_count or zone_redundant but not both. Changing this forces a new resource to be created.