Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azure.appservice.kotlin
import com.pulumi.azure.appservice.WindowsFunctionAppSlotArgs.builder
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotAuthSettingsArgs
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotAuthSettingsArgsBuilder
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotAuthSettingsV2Args
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotAuthSettingsV2ArgsBuilder
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotBackupArgs
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotBackupArgsBuilder
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotConnectionStringArgs
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotConnectionStringArgsBuilder
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotIdentityArgs
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotIdentityArgsBuilder
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotSiteConfigArgs
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotSiteConfigArgsBuilder
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotStorageAccountArgs
import com.pulumi.azure.appservice.kotlin.inputs.WindowsFunctionAppSlotStorageAccountArgsBuilder
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
/**
* Manages a Windows Function App Slot.
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as azure from "@pulumi/azure";
* const example = new azure.core.ResourceGroup("example", {
* name: "example-resources",
* location: "West Europe",
* });
* const exampleAccount = new azure.storage.Account("example", {
* name: "windowsfunctionappsa",
* resourceGroupName: example.name,
* location: example.location,
* accountTier: "Standard",
* accountReplicationType: "LRS",
* });
* const exampleServicePlan = new azure.appservice.ServicePlan("example", {
* name: "example-app-service-plan",
* resourceGroupName: example.name,
* location: example.location,
* osType: "Windows",
* skuName: "Y1",
* });
* const exampleWindowsFunctionApp = new azure.appservice.WindowsFunctionApp("example", {
* name: "example-windows-function-app",
* resourceGroupName: example.name,
* location: example.location,
* storageAccountName: exampleAccount.name,
* servicePlanId: exampleServicePlan.id,
* siteConfig: {},
* });
* const exampleWindowsFunctionAppSlot = new azure.appservice.WindowsFunctionAppSlot("example", {
* name: "example-slot",
* functionAppId: exampleWindowsFunctionApp.id,
* storageAccountName: exampleAccount.name,
* siteConfig: {},
* });
* ```
* ```python
* import pulumi
* import pulumi_azure as azure
* example = azure.core.ResourceGroup("example",
* name="example-resources",
* location="West Europe")
* example_account = azure.storage.Account("example",
* name="windowsfunctionappsa",
* resource_group_name=example.name,
* location=example.location,
* account_tier="Standard",
* account_replication_type="LRS")
* example_service_plan = azure.appservice.ServicePlan("example",
* name="example-app-service-plan",
* resource_group_name=example.name,
* location=example.location,
* os_type="Windows",
* sku_name="Y1")
* example_windows_function_app = azure.appservice.WindowsFunctionApp("example",
* name="example-windows-function-app",
* resource_group_name=example.name,
* location=example.location,
* storage_account_name=example_account.name,
* service_plan_id=example_service_plan.id,
* site_config={})
* example_windows_function_app_slot = azure.appservice.WindowsFunctionAppSlot("example",
* name="example-slot",
* function_app_id=example_windows_function_app.id,
* storage_account_name=example_account.name,
* site_config={})
* ```
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using Azure = Pulumi.Azure;
* return await Deployment.RunAsync(() =>
* {
* var example = new Azure.Core.ResourceGroup("example", new()
* {
* Name = "example-resources",
* Location = "West Europe",
* });
* var exampleAccount = new Azure.Storage.Account("example", new()
* {
* Name = "windowsfunctionappsa",
* ResourceGroupName = example.Name,
* Location = example.Location,
* AccountTier = "Standard",
* AccountReplicationType = "LRS",
* });
* var exampleServicePlan = new Azure.AppService.ServicePlan("example", new()
* {
* Name = "example-app-service-plan",
* ResourceGroupName = example.Name,
* Location = example.Location,
* OsType = "Windows",
* SkuName = "Y1",
* });
* var exampleWindowsFunctionApp = new Azure.AppService.WindowsFunctionApp("example", new()
* {
* Name = "example-windows-function-app",
* ResourceGroupName = example.Name,
* Location = example.Location,
* StorageAccountName = exampleAccount.Name,
* ServicePlanId = exampleServicePlan.Id,
* SiteConfig = null,
* });
* var exampleWindowsFunctionAppSlot = new Azure.AppService.WindowsFunctionAppSlot("example", new()
* {
* Name = "example-slot",
* FunctionAppId = exampleWindowsFunctionApp.Id,
* StorageAccountName = exampleAccount.Name,
* SiteConfig = null,
* });
* });
* ```
* ```go
* package main
* import (
* "github.com/pulumi/pulumi-azure/sdk/v5/go/azure/appservice"
* "github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
* "github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
* Name: pulumi.String("example-resources"),
* Location: pulumi.String("West Europe"),
* })
* if err != nil {
* return err
* }
* exampleAccount, err := storage.NewAccount(ctx, "example", &storage.AccountArgs{
* Name: pulumi.String("windowsfunctionappsa"),
* ResourceGroupName: example.Name,
* Location: example.Location,
* AccountTier: pulumi.String("Standard"),
* AccountReplicationType: pulumi.String("LRS"),
* })
* if err != nil {
* return err
* }
* exampleServicePlan, err := appservice.NewServicePlan(ctx, "example", &appservice.ServicePlanArgs{
* Name: pulumi.String("example-app-service-plan"),
* ResourceGroupName: example.Name,
* Location: example.Location,
* OsType: pulumi.String("Windows"),
* SkuName: pulumi.String("Y1"),
* })
* if err != nil {
* return err
* }
* exampleWindowsFunctionApp, err := appservice.NewWindowsFunctionApp(ctx, "example", &appservice.WindowsFunctionAppArgs{
* Name: pulumi.String("example-windows-function-app"),
* ResourceGroupName: example.Name,
* Location: example.Location,
* StorageAccountName: exampleAccount.Name,
* ServicePlanId: exampleServicePlan.ID(),
* SiteConfig: nil,
* })
* if err != nil {
* return err
* }
* _, err = appservice.NewWindowsFunctionAppSlot(ctx, "example", &appservice.WindowsFunctionAppSlotArgs{
* Name: pulumi.String("example-slot"),
* FunctionAppId: exampleWindowsFunctionApp.ID(),
* StorageAccountName: exampleAccount.Name,
* SiteConfig: nil,
* })
* 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.azure.core.ResourceGroup;
* import com.pulumi.azure.core.ResourceGroupArgs;
* import com.pulumi.azure.storage.Account;
* import com.pulumi.azure.storage.AccountArgs;
* import com.pulumi.azure.appservice.ServicePlan;
* import com.pulumi.azure.appservice.ServicePlanArgs;
* import com.pulumi.azure.appservice.WindowsFunctionApp;
* import com.pulumi.azure.appservice.WindowsFunctionAppArgs;
* import com.pulumi.azure.appservice.inputs.WindowsFunctionAppSiteConfigArgs;
* import com.pulumi.azure.appservice.WindowsFunctionAppSlot;
* import com.pulumi.azure.appservice.WindowsFunctionAppSlotArgs;
* import com.pulumi.azure.appservice.inputs.WindowsFunctionAppSlotSiteConfigArgs;
* 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("example-resources")
* .location("West Europe")
* .build());
* var exampleAccount = new Account("exampleAccount", AccountArgs.builder()
* .name("windowsfunctionappsa")
* .resourceGroupName(example.name())
* .location(example.location())
* .accountTier("Standard")
* .accountReplicationType("LRS")
* .build());
* var exampleServicePlan = new ServicePlan("exampleServicePlan", ServicePlanArgs.builder()
* .name("example-app-service-plan")
* .resourceGroupName(example.name())
* .location(example.location())
* .osType("Windows")
* .skuName("Y1")
* .build());
* var exampleWindowsFunctionApp = new WindowsFunctionApp("exampleWindowsFunctionApp", WindowsFunctionAppArgs.builder()
* .name("example-windows-function-app")
* .resourceGroupName(example.name())
* .location(example.location())
* .storageAccountName(exampleAccount.name())
* .servicePlanId(exampleServicePlan.id())
* .siteConfig()
* .build());
* var exampleWindowsFunctionAppSlot = new WindowsFunctionAppSlot("exampleWindowsFunctionAppSlot", WindowsFunctionAppSlotArgs.builder()
* .name("example-slot")
* .functionAppId(exampleWindowsFunctionApp.id())
* .storageAccountName(exampleAccount.name())
* .siteConfig()
* .build());
* }
* }
* ```
* ```yaml
* resources:
* example:
* type: azure:core:ResourceGroup
* properties:
* name: example-resources
* location: West Europe
* exampleAccount:
* type: azure:storage:Account
* name: example
* properties:
* name: windowsfunctionappsa
* resourceGroupName: ${example.name}
* location: ${example.location}
* accountTier: Standard
* accountReplicationType: LRS
* exampleServicePlan:
* type: azure:appservice:ServicePlan
* name: example
* properties:
* name: example-app-service-plan
* resourceGroupName: ${example.name}
* location: ${example.location}
* osType: Windows
* skuName: Y1
* exampleWindowsFunctionApp:
* type: azure:appservice:WindowsFunctionApp
* name: example
* properties:
* name: example-windows-function-app
* resourceGroupName: ${example.name}
* location: ${example.location}
* storageAccountName: ${exampleAccount.name}
* servicePlanId: ${exampleServicePlan.id}
* siteConfig: {}
* exampleWindowsFunctionAppSlot:
* type: azure:appservice:WindowsFunctionAppSlot
* name: example
* properties:
* name: example-slot
* functionAppId: ${exampleWindowsFunctionApp.id}
* storageAccountName: ${exampleAccount.name}
* siteConfig: {}
* ```
*
* ## Import
* A Windows Function App Slot can be imported using the `resource id`, e.g.
* ```sh
* $ pulumi import azure:appservice/windowsFunctionAppSlot:WindowsFunctionAppSlot example "/subscriptions/12345678-1234-9876-4563-123456789012/resourceGroups/resGroup1/providers/Microsoft.Web/sites/site1/slots/slot1"
* ```
* @property appSettings A map of key-value pairs for [App Settings](https://docs.microsoft.com/azure/azure-functions/functions-app-settings) and custom values.
* @property authSettings an `auth_settings` block as detailed below.
* @property authSettingsV2 an `auth_settings_v2` block as detailed below.
* @property backup a `backup` block as detailed below.
* @property builtinLoggingEnabled Should built-in logging be enabled. Configures `AzureWebJobsDashboard` app setting based on the configured storage setting. Defaults to `true`.
* @property clientCertificateEnabled Should the Function App Slot use Client Certificates.
* @property clientCertificateExclusionPaths Paths to exclude when using client certificates, separated by ;
* @property clientCertificateMode The mode of the Function App Slot's client certificates requirement for incoming requests. Possible values are `Required`, `Optional`, and `OptionalInteractiveUser`. Defaults to `Optional`.
* @property connectionStrings a `connection_string` block as detailed below.
* @property contentShareForceDisabled Force disable the content share settings.
* @property dailyMemoryTimeQuota The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. Defaults to `0`.
* @property enabled Is the Windows Function App Slot enabled. Defaults to `true`.
* @property ftpPublishBasicAuthenticationEnabled Should the default FTP Basic Authentication publishing profile be enabled. Defaults to `true`.
* @property functionAppId The name of the Windows Function App this Slot is a member of. Changing this forces a new resource to be created.
* @property functionsExtensionVersion The runtime version associated with the Function App Slot. Defaults to `~4`.
* @property httpsOnly Can the Function App Slot only be accessed via HTTPS?. Defaults to `false`.
* @property identity an `identity` block as detailed below.
* @property keyVaultReferenceIdentityId The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the `identity` block. [For more information see - Access vaults with a user-assigned identity](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references#access-vaults-with-a-user-assigned-identity)
* @property name Specifies the name of the Windows Function App Slot. Changing this forces a new resource to be created.
* @property publicNetworkAccessEnabled Should public network access be enabled for the Function App. Defaults to `true`.
* @property servicePlanId The ID of the Service Plan in which to run this slot. If not specified the same Service Plan as the Windows Function App will be used.
* @property siteConfig a `site_config` block as detailed below.
* @property storageAccountAccessKey The access key which will be used to access the storage account for the Function App Slot.
* @property storageAccountName The backend storage account name which will be used by this Function App Slot.
* @property storageAccounts One or more `storage_account` blocks as defined below.
* @property storageKeyVaultSecretId The Key Vault Secret ID, optionally including version, that contains the Connection String to connect to the storage account for this Function App Slot.
* > **NOTE:** `storage_key_vault_secret_id` cannot be used with `storage_account_name`.
* > **NOTE:** `storage_key_vault_secret_id` used without a version will use the latest version of the secret, however, the service can take up to 24h to pick up a rotation of the latest version. See the [official docs](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references#rotation) for more information.
* @property storageUsesManagedIdentity Should the Function App Slot use its Managed Identity to access storage.
* > **NOTE:** One of `storage_account_access_key` or `storage_uses_managed_identity` must be specified when using `storage_account_name`.
* @property tags A mapping of tags which should be assigned to the Windows Function App Slot.
* @property virtualNetworkSubnetId
* @property webdeployPublishBasicAuthenticationEnabled Should the default WebDeploy Basic Authentication publishing credentials enabled. Defaults to `true`.
*/
public data class WindowsFunctionAppSlotArgs(
public val appSettings: Output