All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.web.kotlin.WebAppSlotArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 2.82.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azurenative.web.kotlin

import com.pulumi.azurenative.web.WebAppSlotArgs.builder
import com.pulumi.azurenative.web.kotlin.enums.ClientCertMode
import com.pulumi.azurenative.web.kotlin.enums.RedundancyMode
import com.pulumi.azurenative.web.kotlin.inputs.CloningInfoArgs
import com.pulumi.azurenative.web.kotlin.inputs.CloningInfoArgsBuilder
import com.pulumi.azurenative.web.kotlin.inputs.ExtendedLocationArgs
import com.pulumi.azurenative.web.kotlin.inputs.ExtendedLocationArgsBuilder
import com.pulumi.azurenative.web.kotlin.inputs.HostNameSslStateArgs
import com.pulumi.azurenative.web.kotlin.inputs.HostNameSslStateArgsBuilder
import com.pulumi.azurenative.web.kotlin.inputs.HostingEnvironmentProfileArgs
import com.pulumi.azurenative.web.kotlin.inputs.HostingEnvironmentProfileArgsBuilder
import com.pulumi.azurenative.web.kotlin.inputs.ManagedServiceIdentityArgs
import com.pulumi.azurenative.web.kotlin.inputs.ManagedServiceIdentityArgsBuilder
import com.pulumi.azurenative.web.kotlin.inputs.SiteConfigArgs
import com.pulumi.azurenative.web.kotlin.inputs.SiteConfigArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.Int
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.collections.Map
import kotlin.jvm.JvmName

/**
 * A web app, a mobile app backend, or an API app.
 * Azure REST API version: 2022-09-01. Prior API version in Azure Native 1.x: 2020-12-01.
 * Other available API versions: 2016-08-01, 2018-11-01, 2020-10-01, 2023-01-01, 2023-12-01.
 * ## Example Usage
 * ### Clone web app slot
 * ```csharp
 * using System.Collections.Generic;
 * using System.Linq;
 * using Pulumi;
 * using AzureNative = Pulumi.AzureNative;
 * return await Deployment.RunAsync(() =>
 * {
 *     var webAppSlot = new AzureNative.Web.WebAppSlot("webAppSlot", new()
 *     {
 *         CloningInfo = new AzureNative.Web.Inputs.CloningInfoArgs
 *         {
 *             AppSettingsOverrides =
 *             {
 *                 { "Setting1", "NewValue1" },
 *                 { "Setting3", "NewValue5" },
 *             },
 *             CloneCustomHostNames = true,
 *             CloneSourceControl = true,
 *             ConfigureLoadBalancing = false,
 *             HostingEnvironment = "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg456/providers/Microsoft.Web/hostingenvironments/aseforsites",
 *             Overwrite = false,
 *             SourceWebAppId = "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg456/providers/Microsoft.Web/sites/srcsiteg478/slot/qa",
 *             SourceWebAppLocation = "West Europe",
 *         },
 *         Kind = "app",
 *         Location = "East US",
 *         Name = "sitef6141",
 *         ResourceGroupName = "testrg123",
 *         Slot = "staging",
 *     });
 * });
 * ```
 * ```go
 * package main
 * import (
 * 	web "github.com/pulumi/pulumi-azure-native-sdk/web/v2"
 * 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
 * )
 * func main() {
 * 	pulumi.Run(func(ctx *pulumi.Context) error {
 * 		_, err := web.NewWebAppSlot(ctx, "webAppSlot", &web.WebAppSlotArgs{
 * 			CloningInfo: &web.CloningInfoArgs{
 * 				AppSettingsOverrides: pulumi.StringMap{
 * 					"Setting1": pulumi.String("NewValue1"),
 * 					"Setting3": pulumi.String("NewValue5"),
 * 				},
 * 				CloneCustomHostNames:   pulumi.Bool(true),
 * 				CloneSourceControl:     pulumi.Bool(true),
 * 				ConfigureLoadBalancing: pulumi.Bool(false),
 * 				HostingEnvironment:     pulumi.String("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg456/providers/Microsoft.Web/hostingenvironments/aseforsites"),
 * 				Overwrite:              pulumi.Bool(false),
 * 				SourceWebAppId:         pulumi.String("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg456/providers/Microsoft.Web/sites/srcsiteg478/slot/qa"),
 * 				SourceWebAppLocation:   pulumi.String("West Europe"),
 * 			},
 * 			Kind:              pulumi.String("app"),
 * 			Location:          pulumi.String("East US"),
 * 			Name:              pulumi.String("sitef6141"),
 * 			ResourceGroupName: pulumi.String("testrg123"),
 * 			Slot:              pulumi.String("staging"),
 * 		})
 * 		if err != nil {
 * 			return err
 * 		}
 * 		return nil
 * 	})
 * }
 * ```
 * ```java
 * package generated_program;
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.web.WebAppSlot;
 * import com.pulumi.azurenative.web.WebAppSlotArgs;
 * import com.pulumi.azurenative.web.inputs.CloningInfoArgs;
 * 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 webAppSlot = new WebAppSlot("webAppSlot", WebAppSlotArgs.builder()
 *             .cloningInfo(CloningInfoArgs.builder()
 *                 .appSettingsOverrides(Map.ofEntries(
 *                     Map.entry("Setting1", "NewValue1"),
 *                     Map.entry("Setting3", "NewValue5")
 *                 ))
 *                 .cloneCustomHostNames(true)
 *                 .cloneSourceControl(true)
 *                 .configureLoadBalancing(false)
 *                 .hostingEnvironment("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg456/providers/Microsoft.Web/hostingenvironments/aseforsites")
 *                 .overwrite(false)
 *                 .sourceWebAppId("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg456/providers/Microsoft.Web/sites/srcsiteg478/slot/qa")
 *                 .sourceWebAppLocation("West Europe")
 *                 .build())
 *             .kind("app")
 *             .location("East US")
 *             .name("sitef6141")
 *             .resourceGroupName("testrg123")
 *             .slot("staging")
 *             .build());
 *     }
 * }
 * ```
 * ### Create or Update Web App Slot
 * ```csharp
 * using System.Collections.Generic;
 * using System.Linq;
 * using Pulumi;
 * using AzureNative = Pulumi.AzureNative;
 * return await Deployment.RunAsync(() =>
 * {
 *     var webAppSlot = new AzureNative.Web.WebAppSlot("webAppSlot", new()
 *     {
 *         Kind = "app",
 *         Location = "East US",
 *         Name = "sitef6141",
 *         ResourceGroupName = "testrg123",
 *         ServerFarmId = "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/DefaultAsp",
 *         Slot = "staging",
 *     });
 * });
 * ```
 * ```go
 * package main
 * import (
 * 	web "github.com/pulumi/pulumi-azure-native-sdk/web/v2"
 * 	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
 * )
 * func main() {
 * 	pulumi.Run(func(ctx *pulumi.Context) error {
 * 		_, err := web.NewWebAppSlot(ctx, "webAppSlot", &web.WebAppSlotArgs{
 * 			Kind:              pulumi.String("app"),
 * 			Location:          pulumi.String("East US"),
 * 			Name:              pulumi.String("sitef6141"),
 * 			ResourceGroupName: pulumi.String("testrg123"),
 * 			ServerFarmId:      pulumi.String("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/DefaultAsp"),
 * 			Slot:              pulumi.String("staging"),
 * 		})
 * 		if err != nil {
 * 			return err
 * 		}
 * 		return nil
 * 	})
 * }
 * ```
 * ```java
 * package generated_program;
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.web.WebAppSlot;
 * import com.pulumi.azurenative.web.WebAppSlotArgs;
 * 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 webAppSlot = new WebAppSlot("webAppSlot", WebAppSlotArgs.builder()
 *             .kind("app")
 *             .location("East US")
 *             .name("sitef6141")
 *             .resourceGroupName("testrg123")
 *             .serverFarmId("/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/serverfarms/DefaultAsp")
 *             .slot("staging")
 *             .build());
 *     }
 * }
 * ```
 * ## Import
 * An existing resource can be imported using its type token, name, and identifier, e.g.
 * ```sh
 * $ pulumi import azure-native:web:WebAppSlot sitef6141/staging /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}
 * ```
 * @property clientAffinityEnabled true to enable client affinity; false to stop sending session affinity cookies, which route client requests in the same session to the same instance. Default is true.
 * @property clientCertEnabled true to enable client certificate authentication (TLS mutual authentication); otherwise, false. Default is false.
 * @property clientCertExclusionPaths client certificate authentication comma-separated exclusion paths
 * @property clientCertMode This composes with ClientCertEnabled setting.
 * - ClientCertEnabled: false means ClientCert is ignored.
 * - ClientCertEnabled: true and ClientCertMode: Required means ClientCert is required.
 * - ClientCertEnabled: true and ClientCertMode: Optional means ClientCert is optional or accepted.
 * @property cloningInfo If specified during app creation, the app is cloned from a source app.
 * @property containerSize Size of the function container.
 * @property customDomainVerificationId Unique identifier that verifies the custom domains assigned to the app. Customer will add this id to a txt record for verification.
 * @property dailyMemoryTimeQuota Maximum allowed daily memory-time quota (applicable on dynamic apps only).
 * @property enabled true if the app is enabled; otherwise, false. Setting this value to false disables the app (takes the app offline).
 * @property extendedLocation Extended Location.
 * @property hostNameSslStates Hostname SSL states are used to manage the SSL bindings for app's hostnames.
 * @property hostNamesDisabled true to disable the public hostnames of the app; otherwise, false.
 *  If true, the app is only accessible via API management process.
 * @property hostingEnvironmentProfile App Service Environment to use for the app.
 * @property httpsOnly HttpsOnly: configures a web site to accept only https requests. Issues redirect for
 * http requests
 * @property hyperV Hyper-V sandbox.
 * @property identity Managed service identity.
 * @property isXenon Obsolete: Hyper-V sandbox.
 * @property keyVaultReferenceIdentity Identity to use for Key Vault Reference authentication.
 * @property kind Kind of resource.
 * @property location Resource Location.
 * @property managedEnvironmentId Azure Resource Manager ID of the customer's selected Managed Environment on which to host this app. This must be of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.App/managedEnvironments/{managedEnvironmentName}
 * @property name Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.
 * @property publicNetworkAccess Property to allow or block all public traffic. Allowed Values: 'Enabled', 'Disabled' or an empty string.
 * @property redundancyMode Site redundancy mode
 * @property reserved true if reserved; otherwise, false.
 * @property resourceGroupName Name of the resource group to which the resource belongs.
 * @property scmSiteAlsoStopped true to stop SCM (KUDU) site when the app is stopped; otherwise, false. The default is false.
 * @property serverFarmId Resource ID of the associated App Service plan, formatted as: "/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}".
 * @property siteConfig Configuration of the app.
 * @property slot Name of the deployment slot to create or update. By default, this API attempts to create or modify the production slot.
 * @property storageAccountRequired Checks if Customer provided storage account is required
 * @property tags Resource tags.
 * @property virtualNetworkSubnetId Azure Resource Manager ID of the Virtual network and subnet to be joined by Regional VNET Integration.
 * This must be of the form /subscriptions/{subscriptionName}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}
 * @property vnetContentShareEnabled To enable accessing content over virtual network
 * @property vnetImagePullEnabled To enable pulling image over Virtual Network
 * @property vnetRouteAllEnabled Virtual Network Route All enabled. This causes all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied.
 */
public data class WebAppSlotArgs(
    public val clientAffinityEnabled: Output? = null,
    public val clientCertEnabled: Output? = null,
    public val clientCertExclusionPaths: Output? = null,
    public val clientCertMode: Output? = null,
    public val cloningInfo: Output? = null,
    public val containerSize: Output? = null,
    public val customDomainVerificationId: Output? = null,
    public val dailyMemoryTimeQuota: Output? = null,
    public val enabled: Output? = null,
    public val extendedLocation: Output? = null,
    public val hostNameSslStates: Output>? = null,
    public val hostNamesDisabled: Output? = null,
    public val hostingEnvironmentProfile: Output? = null,
    public val httpsOnly: Output? = null,
    public val hyperV: Output? = null,
    public val identity: Output? = null,
    public val isXenon: Output? = null,
    public val keyVaultReferenceIdentity: Output? = null,
    public val kind: Output? = null,
    public val location: Output? = null,
    public val managedEnvironmentId: Output? = null,
    public val name: Output? = null,
    public val publicNetworkAccess: Output? = null,
    public val redundancyMode: Output? = null,
    public val reserved: Output? = null,
    public val resourceGroupName: Output? = null,
    public val scmSiteAlsoStopped: Output? = null,
    public val serverFarmId: Output? = null,
    public val siteConfig: Output? = null,
    public val slot: Output? = null,
    public val storageAccountRequired: Output? = null,
    public val tags: Output>? = null,
    public val virtualNetworkSubnetId: Output? = null,
    public val vnetContentShareEnabled: Output? = null,
    public val vnetImagePullEnabled: Output? = null,
    public val vnetRouteAllEnabled: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.web.WebAppSlotArgs =
        com.pulumi.azurenative.web.WebAppSlotArgs.builder()
            .clientAffinityEnabled(clientAffinityEnabled?.applyValue({ args0 -> args0 }))
            .clientCertEnabled(clientCertEnabled?.applyValue({ args0 -> args0 }))
            .clientCertExclusionPaths(clientCertExclusionPaths?.applyValue({ args0 -> args0 }))
            .clientCertMode(clientCertMode?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .cloningInfo(cloningInfo?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .containerSize(containerSize?.applyValue({ args0 -> args0 }))
            .customDomainVerificationId(customDomainVerificationId?.applyValue({ args0 -> args0 }))
            .dailyMemoryTimeQuota(dailyMemoryTimeQuota?.applyValue({ args0 -> args0 }))
            .enabled(enabled?.applyValue({ args0 -> args0 }))
            .extendedLocation(extendedLocation?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .hostNameSslStates(
                hostNameSslStates?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .hostNamesDisabled(hostNamesDisabled?.applyValue({ args0 -> args0 }))
            .hostingEnvironmentProfile(
                hostingEnvironmentProfile?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .httpsOnly(httpsOnly?.applyValue({ args0 -> args0 }))
            .hyperV(hyperV?.applyValue({ args0 -> args0 }))
            .identity(identity?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .isXenon(isXenon?.applyValue({ args0 -> args0 }))
            .keyVaultReferenceIdentity(keyVaultReferenceIdentity?.applyValue({ args0 -> args0 }))
            .kind(kind?.applyValue({ args0 -> args0 }))
            .location(location?.applyValue({ args0 -> args0 }))
            .managedEnvironmentId(managedEnvironmentId?.applyValue({ args0 -> args0 }))
            .name(name?.applyValue({ args0 -> args0 }))
            .publicNetworkAccess(publicNetworkAccess?.applyValue({ args0 -> args0 }))
            .redundancyMode(redundancyMode?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .reserved(reserved?.applyValue({ args0 -> args0 }))
            .resourceGroupName(resourceGroupName?.applyValue({ args0 -> args0 }))
            .scmSiteAlsoStopped(scmSiteAlsoStopped?.applyValue({ args0 -> args0 }))
            .serverFarmId(serverFarmId?.applyValue({ args0 -> args0 }))
            .siteConfig(siteConfig?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .slot(slot?.applyValue({ args0 -> args0 }))
            .storageAccountRequired(storageAccountRequired?.applyValue({ args0 -> args0 }))
            .tags(tags?.applyValue({ args0 -> args0.map({ args0 -> args0.key.to(args0.value) }).toMap() }))
            .virtualNetworkSubnetId(virtualNetworkSubnetId?.applyValue({ args0 -> args0 }))
            .vnetContentShareEnabled(vnetContentShareEnabled?.applyValue({ args0 -> args0 }))
            .vnetImagePullEnabled(vnetImagePullEnabled?.applyValue({ args0 -> args0 }))
            .vnetRouteAllEnabled(vnetRouteAllEnabled?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [WebAppSlotArgs].
 */
@PulumiTagMarker
public class WebAppSlotArgsBuilder internal constructor() {
    private var clientAffinityEnabled: Output? = null

    private var clientCertEnabled: Output? = null

    private var clientCertExclusionPaths: Output? = null

    private var clientCertMode: Output? = null

    private var cloningInfo: Output? = null

    private var containerSize: Output? = null

    private var customDomainVerificationId: Output? = null

    private var dailyMemoryTimeQuota: Output? = null

    private var enabled: Output? = null

    private var extendedLocation: Output? = null

    private var hostNameSslStates: Output>? = null

    private var hostNamesDisabled: Output? = null

    private var hostingEnvironmentProfile: Output? = null

    private var httpsOnly: Output? = null

    private var hyperV: Output? = null

    private var identity: Output? = null

    private var isXenon: Output? = null

    private var keyVaultReferenceIdentity: Output? = null

    private var kind: Output? = null

    private var location: Output? = null

    private var managedEnvironmentId: Output? = null

    private var name: Output? = null

    private var publicNetworkAccess: Output? = null

    private var redundancyMode: Output? = null

    private var reserved: Output? = null

    private var resourceGroupName: Output? = null

    private var scmSiteAlsoStopped: Output? = null

    private var serverFarmId: Output? = null

    private var siteConfig: Output? = null

    private var slot: Output? = null

    private var storageAccountRequired: Output? = null

    private var tags: Output>? = null

    private var virtualNetworkSubnetId: Output? = null

    private var vnetContentShareEnabled: Output? = null

    private var vnetImagePullEnabled: Output? = null

    private var vnetRouteAllEnabled: Output? = null

    /**
     * @param value true to enable client affinity; false to stop sending session affinity cookies, which route client requests in the same session to the same instance. Default is true.
     */
    @JvmName("lmtgspwranvrtmvk")
    public suspend fun clientAffinityEnabled(`value`: Output) {
        this.clientAffinityEnabled = value
    }

    /**
     * @param value true to enable client certificate authentication (TLS mutual authentication); otherwise, false. Default is false.
     */
    @JvmName("xnilcetnpehgdgtk")
    public suspend fun clientCertEnabled(`value`: Output) {
        this.clientCertEnabled = value
    }

    /**
     * @param value client certificate authentication comma-separated exclusion paths
     */
    @JvmName("dedkgceaogecobsi")
    public suspend fun clientCertExclusionPaths(`value`: Output) {
        this.clientCertExclusionPaths = value
    }

    /**
     * @param value This composes with ClientCertEnabled setting.
     * - ClientCertEnabled: false means ClientCert is ignored.
     * - ClientCertEnabled: true and ClientCertMode: Required means ClientCert is required.
     * - ClientCertEnabled: true and ClientCertMode: Optional means ClientCert is optional or accepted.
     */
    @JvmName("panxhkckdysfaegs")
    public suspend fun clientCertMode(`value`: Output) {
        this.clientCertMode = value
    }

    /**
     * @param value If specified during app creation, the app is cloned from a source app.
     */
    @JvmName("hfcxubruoimcugrv")
    public suspend fun cloningInfo(`value`: Output) {
        this.cloningInfo = value
    }

    /**
     * @param value Size of the function container.
     */
    @JvmName("jwxpcriygukkprgi")
    public suspend fun containerSize(`value`: Output) {
        this.containerSize = value
    }

    /**
     * @param value Unique identifier that verifies the custom domains assigned to the app. Customer will add this id to a txt record for verification.
     */
    @JvmName("kltjpioaosgskylj")
    public suspend fun customDomainVerificationId(`value`: Output) {
        this.customDomainVerificationId = value
    }

    /**
     * @param value Maximum allowed daily memory-time quota (applicable on dynamic apps only).
     */
    @JvmName("ldpokqgshfmeumsj")
    public suspend fun dailyMemoryTimeQuota(`value`: Output) {
        this.dailyMemoryTimeQuota = value
    }

    /**
     * @param value true if the app is enabled; otherwise, false. Setting this value to false disables the app (takes the app offline).
     */
    @JvmName("sdpahjjjsswjqdwj")
    public suspend fun enabled(`value`: Output) {
        this.enabled = value
    }

    /**
     * @param value Extended Location.
     */
    @JvmName("eescqcxjkbijjbgu")
    public suspend fun extendedLocation(`value`: Output) {
        this.extendedLocation = value
    }

    /**
     * @param value Hostname SSL states are used to manage the SSL bindings for app's hostnames.
     */
    @JvmName("ebgpqiqublflcffp")
    public suspend fun hostNameSslStates(`value`: Output>) {
        this.hostNameSslStates = value
    }

    @JvmName("tfkvmfrloqlbbyav")
    public suspend fun hostNameSslStates(vararg values: Output) {
        this.hostNameSslStates = Output.all(values.asList())
    }

    /**
     * @param values Hostname SSL states are used to manage the SSL bindings for app's hostnames.
     */
    @JvmName("ecvsqetwmwocfwpn")
    public suspend fun hostNameSslStates(values: List>) {
        this.hostNameSslStates = Output.all(values)
    }

    /**
     * @param value true to disable the public hostnames of the app; otherwise, false.
     *  If true, the app is only accessible via API management process.
     */
    @JvmName("qmffblgygntsrkdi")
    public suspend fun hostNamesDisabled(`value`: Output) {
        this.hostNamesDisabled = value
    }

    /**
     * @param value App Service Environment to use for the app.
     */
    @JvmName("frdgnneiswaefdki")
    public suspend fun hostingEnvironmentProfile(`value`: Output) {
        this.hostingEnvironmentProfile = value
    }

    /**
     * @param value HttpsOnly: configures a web site to accept only https requests. Issues redirect for
     * http requests
     */
    @JvmName("nngykrhxkvysypjd")
    public suspend fun httpsOnly(`value`: Output) {
        this.httpsOnly = value
    }

    /**
     * @param value Hyper-V sandbox.
     */
    @JvmName("ppnxdaowrwphmsli")
    public suspend fun hyperV(`value`: Output) {
        this.hyperV = value
    }

    /**
     * @param value Managed service identity.
     */
    @JvmName("bdkkrkeexmhbqasq")
    public suspend fun identity(`value`: Output) {
        this.identity = value
    }

    /**
     * @param value Obsolete: Hyper-V sandbox.
     */
    @JvmName("gknqdhbrivnlodlt")
    public suspend fun isXenon(`value`: Output) {
        this.isXenon = value
    }

    /**
     * @param value Identity to use for Key Vault Reference authentication.
     */
    @JvmName("hgbxygnowmlyygmx")
    public suspend fun keyVaultReferenceIdentity(`value`: Output) {
        this.keyVaultReferenceIdentity = value
    }

    /**
     * @param value Kind of resource.
     */
    @JvmName("kruxtaaodjnytlkt")
    public suspend fun kind(`value`: Output) {
        this.kind = value
    }

    /**
     * @param value Resource Location.
     */
    @JvmName("vhnkjtuckvepxbll")
    public suspend fun location(`value`: Output) {
        this.location = value
    }

    /**
     * @param value Azure Resource Manager ID of the customer's selected Managed Environment on which to host this app. This must be of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.App/managedEnvironments/{managedEnvironmentName}
     */
    @JvmName("hurddtsoecgaxxke")
    public suspend fun managedEnvironmentId(`value`: Output) {
        this.managedEnvironmentId = value
    }

    /**
     * @param value Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.
     */
    @JvmName("tygmyegegdbvmiji")
    public suspend fun name(`value`: Output) {
        this.name = value
    }

    /**
     * @param value Property to allow or block all public traffic. Allowed Values: 'Enabled', 'Disabled' or an empty string.
     */
    @JvmName("sfdoniyyrbkhiqiu")
    public suspend fun publicNetworkAccess(`value`: Output) {
        this.publicNetworkAccess = value
    }

    /**
     * @param value Site redundancy mode
     */
    @JvmName("ebynsnvdgjootpet")
    public suspend fun redundancyMode(`value`: Output) {
        this.redundancyMode = value
    }

    /**
     * @param value true if reserved; otherwise, false.
     */
    @JvmName("surnpglcxihtsnjr")
    public suspend fun reserved(`value`: Output) {
        this.reserved = value
    }

    /**
     * @param value Name of the resource group to which the resource belongs.
     */
    @JvmName("tpcwnoppolrwbdig")
    public suspend fun resourceGroupName(`value`: Output) {
        this.resourceGroupName = value
    }

    /**
     * @param value true to stop SCM (KUDU) site when the app is stopped; otherwise, false. The default is false.
     */
    @JvmName("mfljotmcpdwmthit")
    public suspend fun scmSiteAlsoStopped(`value`: Output) {
        this.scmSiteAlsoStopped = value
    }

    /**
     * @param value Resource ID of the associated App Service plan, formatted as: "/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}".
     */
    @JvmName("wvtrshxfqbtvuwmw")
    public suspend fun serverFarmId(`value`: Output) {
        this.serverFarmId = value
    }

    /**
     * @param value Configuration of the app.
     */
    @JvmName("krvtkdeobvgrrvbo")
    public suspend fun siteConfig(`value`: Output) {
        this.siteConfig = value
    }

    /**
     * @param value Name of the deployment slot to create or update. By default, this API attempts to create or modify the production slot.
     */
    @JvmName("wtpewatvllmqsrfi")
    public suspend fun slot(`value`: Output) {
        this.slot = value
    }

    /**
     * @param value Checks if Customer provided storage account is required
     */
    @JvmName("qfprvkxbtcvjbgjn")
    public suspend fun storageAccountRequired(`value`: Output) {
        this.storageAccountRequired = value
    }

    /**
     * @param value Resource tags.
     */
    @JvmName("sqgjgmnwvpkiatby")
    public suspend fun tags(`value`: Output>) {
        this.tags = value
    }

    /**
     * @param value Azure Resource Manager ID of the Virtual network and subnet to be joined by Regional VNET Integration.
     * This must be of the form /subscriptions/{subscriptionName}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}
     */
    @JvmName("mtpsqtntupqppcca")
    public suspend fun virtualNetworkSubnetId(`value`: Output) {
        this.virtualNetworkSubnetId = value
    }

    /**
     * @param value To enable accessing content over virtual network
     */
    @JvmName("ntmmyvxtywerbeyk")
    public suspend fun vnetContentShareEnabled(`value`: Output) {
        this.vnetContentShareEnabled = value
    }

    /**
     * @param value To enable pulling image over Virtual Network
     */
    @JvmName("viatkefnhqhpamwe")
    public suspend fun vnetImagePullEnabled(`value`: Output) {
        this.vnetImagePullEnabled = value
    }

    /**
     * @param value Virtual Network Route All enabled. This causes all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied.
     */
    @JvmName("ubrnjvivkjguwypr")
    public suspend fun vnetRouteAllEnabled(`value`: Output) {
        this.vnetRouteAllEnabled = value
    }

    /**
     * @param value true to enable client affinity; false to stop sending session affinity cookies, which route client requests in the same session to the same instance. Default is true.
     */
    @JvmName("lcmwbelwuhgrxynd")
    public suspend fun clientAffinityEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.clientAffinityEnabled = mapped
    }

    /**
     * @param value true to enable client certificate authentication (TLS mutual authentication); otherwise, false. Default is false.
     */
    @JvmName("rlbrahsdfxkedked")
    public suspend fun clientCertEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.clientCertEnabled = mapped
    }

    /**
     * @param value client certificate authentication comma-separated exclusion paths
     */
    @JvmName("ajsvvkmwhhbgjyva")
    public suspend fun clientCertExclusionPaths(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.clientCertExclusionPaths = mapped
    }

    /**
     * @param value This composes with ClientCertEnabled setting.
     * - ClientCertEnabled: false means ClientCert is ignored.
     * - ClientCertEnabled: true and ClientCertMode: Required means ClientCert is required.
     * - ClientCertEnabled: true and ClientCertMode: Optional means ClientCert is optional or accepted.
     */
    @JvmName("vdasmsvfapvrhryx")
    public suspend fun clientCertMode(`value`: ClientCertMode?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.clientCertMode = mapped
    }

    /**
     * @param value If specified during app creation, the app is cloned from a source app.
     */
    @JvmName("pnbvbmxkeasqhxjt")
    public suspend fun cloningInfo(`value`: CloningInfoArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.cloningInfo = mapped
    }

    /**
     * @param argument If specified during app creation, the app is cloned from a source app.
     */
    @JvmName("kslcwppygrmnhsmf")
    public suspend fun cloningInfo(argument: suspend CloningInfoArgsBuilder.() -> Unit) {
        val toBeMapped = CloningInfoArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.cloningInfo = mapped
    }

    /**
     * @param value Size of the function container.
     */
    @JvmName("xehwcjfjvnxqmeht")
    public suspend fun containerSize(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.containerSize = mapped
    }

    /**
     * @param value Unique identifier that verifies the custom domains assigned to the app. Customer will add this id to a txt record for verification.
     */
    @JvmName("lvqyqpqeimhcdjku")
    public suspend fun customDomainVerificationId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.customDomainVerificationId = mapped
    }

    /**
     * @param value Maximum allowed daily memory-time quota (applicable on dynamic apps only).
     */
    @JvmName("qubpetakdxtkveyl")
    public suspend fun dailyMemoryTimeQuota(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dailyMemoryTimeQuota = mapped
    }

    /**
     * @param value true if the app is enabled; otherwise, false. Setting this value to false disables the app (takes the app offline).
     */
    @JvmName("nqadbcldeghheeao")
    public suspend fun enabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.enabled = mapped
    }

    /**
     * @param value Extended Location.
     */
    @JvmName("vljgpmpjdhfntxop")
    public suspend fun extendedLocation(`value`: ExtendedLocationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.extendedLocation = mapped
    }

    /**
     * @param argument Extended Location.
     */
    @JvmName("oewwapovhttlftly")
    public suspend fun extendedLocation(argument: suspend ExtendedLocationArgsBuilder.() -> Unit) {
        val toBeMapped = ExtendedLocationArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.extendedLocation = mapped
    }

    /**
     * @param value Hostname SSL states are used to manage the SSL bindings for app's hostnames.
     */
    @JvmName("xkdktwfkrkbdwlbg")
    public suspend fun hostNameSslStates(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.hostNameSslStates = mapped
    }

    /**
     * @param argument Hostname SSL states are used to manage the SSL bindings for app's hostnames.
     */
    @JvmName("ebnolkjjdhdkwitd")
    public suspend fun hostNameSslStates(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            HostNameSslStateArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.hostNameSslStates = mapped
    }

    /**
     * @param argument Hostname SSL states are used to manage the SSL bindings for app's hostnames.
     */
    @JvmName("exdlsgghvceqirqt")
    public suspend fun hostNameSslStates(vararg argument: suspend HostNameSslStateArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            HostNameSslStateArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.hostNameSslStates = mapped
    }

    /**
     * @param argument Hostname SSL states are used to manage the SSL bindings for app's hostnames.
     */
    @JvmName("vjtoanaxapsioiik")
    public suspend fun hostNameSslStates(argument: suspend HostNameSslStateArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(HostNameSslStateArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.hostNameSslStates = mapped
    }

    /**
     * @param values Hostname SSL states are used to manage the SSL bindings for app's hostnames.
     */
    @JvmName("kuybrcydojlirecm")
    public suspend fun hostNameSslStates(vararg values: HostNameSslStateArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.hostNameSslStates = mapped
    }

    /**
     * @param value true to disable the public hostnames of the app; otherwise, false.
     *  If true, the app is only accessible via API management process.
     */
    @JvmName("qceiujlgfsuweptr")
    public suspend fun hostNamesDisabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.hostNamesDisabled = mapped
    }

    /**
     * @param value App Service Environment to use for the app.
     */
    @JvmName("tqbebviesjyhoudw")
    public suspend fun hostingEnvironmentProfile(`value`: HostingEnvironmentProfileArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.hostingEnvironmentProfile = mapped
    }

    /**
     * @param argument App Service Environment to use for the app.
     */
    @JvmName("ejjkyqdgiwhshhby")
    public suspend fun hostingEnvironmentProfile(argument: suspend HostingEnvironmentProfileArgsBuilder.() -> Unit) {
        val toBeMapped = HostingEnvironmentProfileArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.hostingEnvironmentProfile = mapped
    }

    /**
     * @param value HttpsOnly: configures a web site to accept only https requests. Issues redirect for
     * http requests
     */
    @JvmName("fnjleuukknllolhv")
    public suspend fun httpsOnly(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.httpsOnly = mapped
    }

    /**
     * @param value Hyper-V sandbox.
     */
    @JvmName("qisydtkxhiugkhna")
    public suspend fun hyperV(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.hyperV = mapped
    }

    /**
     * @param value Managed service identity.
     */
    @JvmName("gughbkkdswaupvbf")
    public suspend fun identity(`value`: ManagedServiceIdentityArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.identity = mapped
    }

    /**
     * @param argument Managed service identity.
     */
    @JvmName("rghrvanjrjqegoyp")
    public suspend fun identity(argument: suspend ManagedServiceIdentityArgsBuilder.() -> Unit) {
        val toBeMapped = ManagedServiceIdentityArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.identity = mapped
    }

    /**
     * @param value Obsolete: Hyper-V sandbox.
     */
    @JvmName("tjvbifvnucsrgxvj")
    public suspend fun isXenon(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.isXenon = mapped
    }

    /**
     * @param value Identity to use for Key Vault Reference authentication.
     */
    @JvmName("drylcrpdulvpcwmt")
    public suspend fun keyVaultReferenceIdentity(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.keyVaultReferenceIdentity = mapped
    }

    /**
     * @param value Kind of resource.
     */
    @JvmName("nidhgwsjfeygcfej")
    public suspend fun kind(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.kind = mapped
    }

    /**
     * @param value Resource Location.
     */
    @JvmName("gguauekdcljuqcma")
    public suspend fun location(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.location = mapped
    }

    /**
     * @param value Azure Resource Manager ID of the customer's selected Managed Environment on which to host this app. This must be of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.App/managedEnvironments/{managedEnvironmentName}
     */
    @JvmName("bmsusgfpwsmkqgdy")
    public suspend fun managedEnvironmentId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.managedEnvironmentId = mapped
    }

    /**
     * @param value Unique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.
     */
    @JvmName("xpwhvdignwnkctfr")
    public suspend fun name(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.name = mapped
    }

    /**
     * @param value Property to allow or block all public traffic. Allowed Values: 'Enabled', 'Disabled' or an empty string.
     */
    @JvmName("vklpmiljchkuajxt")
    public suspend fun publicNetworkAccess(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.publicNetworkAccess = mapped
    }

    /**
     * @param value Site redundancy mode
     */
    @JvmName("qojejurjokrnrmqf")
    public suspend fun redundancyMode(`value`: RedundancyMode?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.redundancyMode = mapped
    }

    /**
     * @param value true if reserved; otherwise, false.
     */
    @JvmName("qlceluhtdqbundrf")
    public suspend fun reserved(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.reserved = mapped
    }

    /**
     * @param value Name of the resource group to which the resource belongs.
     */
    @JvmName("mluokpauivlseotm")
    public suspend fun resourceGroupName(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.resourceGroupName = mapped
    }

    /**
     * @param value true to stop SCM (KUDU) site when the app is stopped; otherwise, false. The default is false.
     */
    @JvmName("nrjruwdvaxgswllk")
    public suspend fun scmSiteAlsoStopped(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.scmSiteAlsoStopped = mapped
    }

    /**
     * @param value Resource ID of the associated App Service plan, formatted as: "/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}".
     */
    @JvmName("dbppfikxsocdwahi")
    public suspend fun serverFarmId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.serverFarmId = mapped
    }

    /**
     * @param value Configuration of the app.
     */
    @JvmName("ukcgndvyoclmsftk")
    public suspend fun siteConfig(`value`: SiteConfigArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.siteConfig = mapped
    }

    /**
     * @param argument Configuration of the app.
     */
    @JvmName("iddxslxdcuessxyp")
    public suspend fun siteConfig(argument: suspend SiteConfigArgsBuilder.() -> Unit) {
        val toBeMapped = SiteConfigArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.siteConfig = mapped
    }

    /**
     * @param value Name of the deployment slot to create or update. By default, this API attempts to create or modify the production slot.
     */
    @JvmName("uwfcjumbchqkgwgn")
    public suspend fun slot(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.slot = mapped
    }

    /**
     * @param value Checks if Customer provided storage account is required
     */
    @JvmName("wuvommlpicjfhafb")
    public suspend fun storageAccountRequired(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.storageAccountRequired = mapped
    }

    /**
     * @param value Resource tags.
     */
    @JvmName("ovdsouivawewxqox")
    public suspend fun tags(`value`: Map?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.tags = mapped
    }

    /**
     * @param values Resource tags.
     */
    @JvmName("rvcokaajiqhwkpwf")
    public fun tags(vararg values: Pair) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.tags = mapped
    }

    /**
     * @param value Azure Resource Manager ID of the Virtual network and subnet to be joined by Regional VNET Integration.
     * This must be of the form /subscriptions/{subscriptionName}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}
     */
    @JvmName("ouscirxrmrchkmuq")
    public suspend fun virtualNetworkSubnetId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.virtualNetworkSubnetId = mapped
    }

    /**
     * @param value To enable accessing content over virtual network
     */
    @JvmName("yvdhhejhreuaguym")
    public suspend fun vnetContentShareEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.vnetContentShareEnabled = mapped
    }

    /**
     * @param value To enable pulling image over Virtual Network
     */
    @JvmName("ukrshwdcjjniwmrt")
    public suspend fun vnetImagePullEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.vnetImagePullEnabled = mapped
    }

    /**
     * @param value Virtual Network Route All enabled. This causes all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied.
     */
    @JvmName("qyebctcmlfftkhuw")
    public suspend fun vnetRouteAllEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.vnetRouteAllEnabled = mapped
    }

    internal fun build(): WebAppSlotArgs = WebAppSlotArgs(
        clientAffinityEnabled = clientAffinityEnabled,
        clientCertEnabled = clientCertEnabled,
        clientCertExclusionPaths = clientCertExclusionPaths,
        clientCertMode = clientCertMode,
        cloningInfo = cloningInfo,
        containerSize = containerSize,
        customDomainVerificationId = customDomainVerificationId,
        dailyMemoryTimeQuota = dailyMemoryTimeQuota,
        enabled = enabled,
        extendedLocation = extendedLocation,
        hostNameSslStates = hostNameSslStates,
        hostNamesDisabled = hostNamesDisabled,
        hostingEnvironmentProfile = hostingEnvironmentProfile,
        httpsOnly = httpsOnly,
        hyperV = hyperV,
        identity = identity,
        isXenon = isXenon,
        keyVaultReferenceIdentity = keyVaultReferenceIdentity,
        kind = kind,
        location = location,
        managedEnvironmentId = managedEnvironmentId,
        name = name,
        publicNetworkAccess = publicNetworkAccess,
        redundancyMode = redundancyMode,
        reserved = reserved,
        resourceGroupName = resourceGroupName,
        scmSiteAlsoStopped = scmSiteAlsoStopped,
        serverFarmId = serverFarmId,
        siteConfig = siteConfig,
        slot = slot,
        storageAccountRequired = storageAccountRequired,
        tags = tags,
        virtualNetworkSubnetId = virtualNetworkSubnetId,
        vnetContentShareEnabled = vnetContentShareEnabled,
        vnetImagePullEnabled = vnetImagePullEnabled,
        vnetRouteAllEnabled = vnetRouteAllEnabled,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy