1. Packages
  2. Azure Classic
  3. API Docs
  4. appservice
  5. FunctionApp

We recommend using Azure Native.

Azure Classic v5.49.0 published on Tuesday, Aug 29, 2023 by Pulumi

azure.appservice.FunctionApp

Explore with Pulumi AI

azure logo

We recommend using Azure Native.

Azure Classic v5.49.0 published on Tuesday, Aug 29, 2023 by Pulumi

    Manages a Function App.

    !> NOTE: This resource has been deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use azure.appservice.LinuxFunctionApp resources instead.

    Note: To connect an Azure Function App and a subnet within the same region azure.appservice.VirtualNetworkSwiftConnection can be used. For an example, check the azure.appservice.VirtualNetworkSwiftConnection documentation.

    Example Usage

    With App Service Plan)

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    
    return await Deployment.RunAsync(() => 
    {
        var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new()
        {
            Location = "West Europe",
        });
    
        var exampleAccount = new Azure.Storage.Account("exampleAccount", new()
        {
            ResourceGroupName = exampleResourceGroup.Name,
            Location = exampleResourceGroup.Location,
            AccountTier = "Standard",
            AccountReplicationType = "LRS",
        });
    
        var examplePlan = new Azure.AppService.Plan("examplePlan", new()
        {
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
            Sku = new Azure.AppService.Inputs.PlanSkuArgs
            {
                Tier = "Standard",
                Size = "S1",
            },
        });
    
        var exampleFunctionApp = new Azure.AppService.FunctionApp("exampleFunctionApp", new()
        {
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
            AppServicePlanId = examplePlan.Id,
            StorageAccountName = exampleAccount.Name,
            StorageAccountAccessKey = exampleAccount.PrimaryAccessKey,
        });
    
    });
    
    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 {
    		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
    			Location: pulumi.String("West Europe"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleAccount, err := storage.NewAccount(ctx, "exampleAccount", &storage.AccountArgs{
    			ResourceGroupName:      exampleResourceGroup.Name,
    			Location:               exampleResourceGroup.Location,
    			AccountTier:            pulumi.String("Standard"),
    			AccountReplicationType: pulumi.String("LRS"),
    		})
    		if err != nil {
    			return err
    		}
    		examplePlan, err := appservice.NewPlan(ctx, "examplePlan", &appservice.PlanArgs{
    			Location:          exampleResourceGroup.Location,
    			ResourceGroupName: exampleResourceGroup.Name,
    			Sku: &appservice.PlanSkuArgs{
    				Tier: pulumi.String("Standard"),
    				Size: pulumi.String("S1"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = appservice.NewFunctionApp(ctx, "exampleFunctionApp", &appservice.FunctionAppArgs{
    			Location:                exampleResourceGroup.Location,
    			ResourceGroupName:       exampleResourceGroup.Name,
    			AppServicePlanId:        examplePlan.ID(),
    			StorageAccountName:      exampleAccount.Name,
    			StorageAccountAccessKey: exampleAccount.PrimaryAccessKey,
    		})
    		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.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.Plan;
    import com.pulumi.azure.appservice.PlanArgs;
    import com.pulumi.azure.appservice.inputs.PlanSkuArgs;
    import com.pulumi.azure.appservice.FunctionApp;
    import com.pulumi.azure.appservice.FunctionAppArgs;
    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 exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()        
                .location("West Europe")
                .build());
    
            var exampleAccount = new Account("exampleAccount", AccountArgs.builder()        
                .resourceGroupName(exampleResourceGroup.name())
                .location(exampleResourceGroup.location())
                .accountTier("Standard")
                .accountReplicationType("LRS")
                .build());
    
            var examplePlan = new Plan("examplePlan", PlanArgs.builder()        
                .location(exampleResourceGroup.location())
                .resourceGroupName(exampleResourceGroup.name())
                .sku(PlanSkuArgs.builder()
                    .tier("Standard")
                    .size("S1")
                    .build())
                .build());
    
            var exampleFunctionApp = new FunctionApp("exampleFunctionApp", FunctionAppArgs.builder()        
                .location(exampleResourceGroup.location())
                .resourceGroupName(exampleResourceGroup.name())
                .appServicePlanId(examplePlan.id())
                .storageAccountName(exampleAccount.name())
                .storageAccountAccessKey(exampleAccount.primaryAccessKey())
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure as azure
    
    example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
    example_account = azure.storage.Account("exampleAccount",
        resource_group_name=example_resource_group.name,
        location=example_resource_group.location,
        account_tier="Standard",
        account_replication_type="LRS")
    example_plan = azure.appservice.Plan("examplePlan",
        location=example_resource_group.location,
        resource_group_name=example_resource_group.name,
        sku=azure.appservice.PlanSkuArgs(
            tier="Standard",
            size="S1",
        ))
    example_function_app = azure.appservice.FunctionApp("exampleFunctionApp",
        location=example_resource_group.location,
        resource_group_name=example_resource_group.name,
        app_service_plan_id=example_plan.id,
        storage_account_name=example_account.name,
        storage_account_access_key=example_account.primary_access_key)
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
    const exampleAccount = new azure.storage.Account("exampleAccount", {
        resourceGroupName: exampleResourceGroup.name,
        location: exampleResourceGroup.location,
        accountTier: "Standard",
        accountReplicationType: "LRS",
    });
    const examplePlan = new azure.appservice.Plan("examplePlan", {
        location: exampleResourceGroup.location,
        resourceGroupName: exampleResourceGroup.name,
        sku: {
            tier: "Standard",
            size: "S1",
        },
    });
    const exampleFunctionApp = new azure.appservice.FunctionApp("exampleFunctionApp", {
        location: exampleResourceGroup.location,
        resourceGroupName: exampleResourceGroup.name,
        appServicePlanId: examplePlan.id,
        storageAccountName: exampleAccount.name,
        storageAccountAccessKey: exampleAccount.primaryAccessKey,
    });
    
    resources:
      exampleResourceGroup:
        type: azure:core:ResourceGroup
        properties:
          location: West Europe
      exampleAccount:
        type: azure:storage:Account
        properties:
          resourceGroupName: ${exampleResourceGroup.name}
          location: ${exampleResourceGroup.location}
          accountTier: Standard
          accountReplicationType: LRS
      examplePlan:
        type: azure:appservice:Plan
        properties:
          location: ${exampleResourceGroup.location}
          resourceGroupName: ${exampleResourceGroup.name}
          sku:
            tier: Standard
            size: S1
      exampleFunctionApp:
        type: azure:appservice:FunctionApp
        properties:
          location: ${exampleResourceGroup.location}
          resourceGroupName: ${exampleResourceGroup.name}
          appServicePlanId: ${examplePlan.id}
          storageAccountName: ${exampleAccount.name}
          storageAccountAccessKey: ${exampleAccount.primaryAccessKey}
    

    In A Consumption Plan)

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    
    return await Deployment.RunAsync(() => 
    {
        var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new()
        {
            Location = "West Europe",
        });
    
        var exampleAccount = new Azure.Storage.Account("exampleAccount", new()
        {
            ResourceGroupName = exampleResourceGroup.Name,
            Location = exampleResourceGroup.Location,
            AccountTier = "Standard",
            AccountReplicationType = "LRS",
        });
    
        var examplePlan = new Azure.AppService.Plan("examplePlan", new()
        {
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
            Kind = "FunctionApp",
            Sku = new Azure.AppService.Inputs.PlanSkuArgs
            {
                Tier = "Dynamic",
                Size = "Y1",
            },
        });
    
        var exampleFunctionApp = new Azure.AppService.FunctionApp("exampleFunctionApp", new()
        {
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
            AppServicePlanId = examplePlan.Id,
            StorageAccountName = exampleAccount.Name,
            StorageAccountAccessKey = exampleAccount.PrimaryAccessKey,
        });
    
    });
    
    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 {
    		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
    			Location: pulumi.String("West Europe"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleAccount, err := storage.NewAccount(ctx, "exampleAccount", &storage.AccountArgs{
    			ResourceGroupName:      exampleResourceGroup.Name,
    			Location:               exampleResourceGroup.Location,
    			AccountTier:            pulumi.String("Standard"),
    			AccountReplicationType: pulumi.String("LRS"),
    		})
    		if err != nil {
    			return err
    		}
    		examplePlan, err := appservice.NewPlan(ctx, "examplePlan", &appservice.PlanArgs{
    			Location:          exampleResourceGroup.Location,
    			ResourceGroupName: exampleResourceGroup.Name,
    			Kind:              pulumi.Any("FunctionApp"),
    			Sku: &appservice.PlanSkuArgs{
    				Tier: pulumi.String("Dynamic"),
    				Size: pulumi.String("Y1"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = appservice.NewFunctionApp(ctx, "exampleFunctionApp", &appservice.FunctionAppArgs{
    			Location:                exampleResourceGroup.Location,
    			ResourceGroupName:       exampleResourceGroup.Name,
    			AppServicePlanId:        examplePlan.ID(),
    			StorageAccountName:      exampleAccount.Name,
    			StorageAccountAccessKey: exampleAccount.PrimaryAccessKey,
    		})
    		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.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.Plan;
    import com.pulumi.azure.appservice.PlanArgs;
    import com.pulumi.azure.appservice.inputs.PlanSkuArgs;
    import com.pulumi.azure.appservice.FunctionApp;
    import com.pulumi.azure.appservice.FunctionAppArgs;
    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 exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()        
                .location("West Europe")
                .build());
    
            var exampleAccount = new Account("exampleAccount", AccountArgs.builder()        
                .resourceGroupName(exampleResourceGroup.name())
                .location(exampleResourceGroup.location())
                .accountTier("Standard")
                .accountReplicationType("LRS")
                .build());
    
            var examplePlan = new Plan("examplePlan", PlanArgs.builder()        
                .location(exampleResourceGroup.location())
                .resourceGroupName(exampleResourceGroup.name())
                .kind("FunctionApp")
                .sku(PlanSkuArgs.builder()
                    .tier("Dynamic")
                    .size("Y1")
                    .build())
                .build());
    
            var exampleFunctionApp = new FunctionApp("exampleFunctionApp", FunctionAppArgs.builder()        
                .location(exampleResourceGroup.location())
                .resourceGroupName(exampleResourceGroup.name())
                .appServicePlanId(examplePlan.id())
                .storageAccountName(exampleAccount.name())
                .storageAccountAccessKey(exampleAccount.primaryAccessKey())
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure as azure
    
    example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
    example_account = azure.storage.Account("exampleAccount",
        resource_group_name=example_resource_group.name,
        location=example_resource_group.location,
        account_tier="Standard",
        account_replication_type="LRS")
    example_plan = azure.appservice.Plan("examplePlan",
        location=example_resource_group.location,
        resource_group_name=example_resource_group.name,
        kind="FunctionApp",
        sku=azure.appservice.PlanSkuArgs(
            tier="Dynamic",
            size="Y1",
        ))
    example_function_app = azure.appservice.FunctionApp("exampleFunctionApp",
        location=example_resource_group.location,
        resource_group_name=example_resource_group.name,
        app_service_plan_id=example_plan.id,
        storage_account_name=example_account.name,
        storage_account_access_key=example_account.primary_access_key)
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
    const exampleAccount = new azure.storage.Account("exampleAccount", {
        resourceGroupName: exampleResourceGroup.name,
        location: exampleResourceGroup.location,
        accountTier: "Standard",
        accountReplicationType: "LRS",
    });
    const examplePlan = new azure.appservice.Plan("examplePlan", {
        location: exampleResourceGroup.location,
        resourceGroupName: exampleResourceGroup.name,
        kind: "FunctionApp",
        sku: {
            tier: "Dynamic",
            size: "Y1",
        },
    });
    const exampleFunctionApp = new azure.appservice.FunctionApp("exampleFunctionApp", {
        location: exampleResourceGroup.location,
        resourceGroupName: exampleResourceGroup.name,
        appServicePlanId: examplePlan.id,
        storageAccountName: exampleAccount.name,
        storageAccountAccessKey: exampleAccount.primaryAccessKey,
    });
    
    resources:
      exampleResourceGroup:
        type: azure:core:ResourceGroup
        properties:
          location: West Europe
      exampleAccount:
        type: azure:storage:Account
        properties:
          resourceGroupName: ${exampleResourceGroup.name}
          location: ${exampleResourceGroup.location}
          accountTier: Standard
          accountReplicationType: LRS
      examplePlan:
        type: azure:appservice:Plan
        properties:
          location: ${exampleResourceGroup.location}
          resourceGroupName: ${exampleResourceGroup.name}
          kind: FunctionApp
          sku:
            tier: Dynamic
            size: Y1
      exampleFunctionApp:
        type: azure:appservice:FunctionApp
        properties:
          location: ${exampleResourceGroup.location}
          resourceGroupName: ${exampleResourceGroup.name}
          appServicePlanId: ${examplePlan.id}
          storageAccountName: ${exampleAccount.name}
          storageAccountAccessKey: ${exampleAccount.primaryAccessKey}
    

    Linux)

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    
    return await Deployment.RunAsync(() => 
    {
        var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new()
        {
            Location = "West Europe",
        });
    
        var exampleAccount = new Azure.Storage.Account("exampleAccount", new()
        {
            ResourceGroupName = exampleResourceGroup.Name,
            Location = exampleResourceGroup.Location,
            AccountTier = "Standard",
            AccountReplicationType = "LRS",
        });
    
        var examplePlan = new Azure.AppService.Plan("examplePlan", new()
        {
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
            Kind = "Linux",
            Reserved = true,
            Sku = new Azure.AppService.Inputs.PlanSkuArgs
            {
                Tier = "Dynamic",
                Size = "Y1",
            },
        });
    
        var exampleFunctionApp = new Azure.AppService.FunctionApp("exampleFunctionApp", new()
        {
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
            AppServicePlanId = examplePlan.Id,
            StorageAccountName = exampleAccount.Name,
            StorageAccountAccessKey = exampleAccount.PrimaryAccessKey,
            OsType = "linux",
            Version = "~3",
        });
    
    });
    
    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 {
    		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
    			Location: pulumi.String("West Europe"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleAccount, err := storage.NewAccount(ctx, "exampleAccount", &storage.AccountArgs{
    			ResourceGroupName:      exampleResourceGroup.Name,
    			Location:               exampleResourceGroup.Location,
    			AccountTier:            pulumi.String("Standard"),
    			AccountReplicationType: pulumi.String("LRS"),
    		})
    		if err != nil {
    			return err
    		}
    		examplePlan, err := appservice.NewPlan(ctx, "examplePlan", &appservice.PlanArgs{
    			Location:          exampleResourceGroup.Location,
    			ResourceGroupName: exampleResourceGroup.Name,
    			Kind:              pulumi.Any("Linux"),
    			Reserved:          pulumi.Bool(true),
    			Sku: &appservice.PlanSkuArgs{
    				Tier: pulumi.String("Dynamic"),
    				Size: pulumi.String("Y1"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = appservice.NewFunctionApp(ctx, "exampleFunctionApp", &appservice.FunctionAppArgs{
    			Location:                exampleResourceGroup.Location,
    			ResourceGroupName:       exampleResourceGroup.Name,
    			AppServicePlanId:        examplePlan.ID(),
    			StorageAccountName:      exampleAccount.Name,
    			StorageAccountAccessKey: exampleAccount.PrimaryAccessKey,
    			OsType:                  pulumi.String("linux"),
    			Version:                 pulumi.String("~3"),
    		})
    		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.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.Plan;
    import com.pulumi.azure.appservice.PlanArgs;
    import com.pulumi.azure.appservice.inputs.PlanSkuArgs;
    import com.pulumi.azure.appservice.FunctionApp;
    import com.pulumi.azure.appservice.FunctionAppArgs;
    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 exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()        
                .location("West Europe")
                .build());
    
            var exampleAccount = new Account("exampleAccount", AccountArgs.builder()        
                .resourceGroupName(exampleResourceGroup.name())
                .location(exampleResourceGroup.location())
                .accountTier("Standard")
                .accountReplicationType("LRS")
                .build());
    
            var examplePlan = new Plan("examplePlan", PlanArgs.builder()        
                .location(exampleResourceGroup.location())
                .resourceGroupName(exampleResourceGroup.name())
                .kind("Linux")
                .reserved(true)
                .sku(PlanSkuArgs.builder()
                    .tier("Dynamic")
                    .size("Y1")
                    .build())
                .build());
    
            var exampleFunctionApp = new FunctionApp("exampleFunctionApp", FunctionAppArgs.builder()        
                .location(exampleResourceGroup.location())
                .resourceGroupName(exampleResourceGroup.name())
                .appServicePlanId(examplePlan.id())
                .storageAccountName(exampleAccount.name())
                .storageAccountAccessKey(exampleAccount.primaryAccessKey())
                .osType("linux")
                .version("~3")
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure as azure
    
    example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
    example_account = azure.storage.Account("exampleAccount",
        resource_group_name=example_resource_group.name,
        location=example_resource_group.location,
        account_tier="Standard",
        account_replication_type="LRS")
    example_plan = azure.appservice.Plan("examplePlan",
        location=example_resource_group.location,
        resource_group_name=example_resource_group.name,
        kind="Linux",
        reserved=True,
        sku=azure.appservice.PlanSkuArgs(
            tier="Dynamic",
            size="Y1",
        ))
    example_function_app = azure.appservice.FunctionApp("exampleFunctionApp",
        location=example_resource_group.location,
        resource_group_name=example_resource_group.name,
        app_service_plan_id=example_plan.id,
        storage_account_name=example_account.name,
        storage_account_access_key=example_account.primary_access_key,
        os_type="linux",
        version="~3")
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
    const exampleAccount = new azure.storage.Account("exampleAccount", {
        resourceGroupName: exampleResourceGroup.name,
        location: exampleResourceGroup.location,
        accountTier: "Standard",
        accountReplicationType: "LRS",
    });
    const examplePlan = new azure.appservice.Plan("examplePlan", {
        location: exampleResourceGroup.location,
        resourceGroupName: exampleResourceGroup.name,
        kind: "Linux",
        reserved: true,
        sku: {
            tier: "Dynamic",
            size: "Y1",
        },
    });
    const exampleFunctionApp = new azure.appservice.FunctionApp("exampleFunctionApp", {
        location: exampleResourceGroup.location,
        resourceGroupName: exampleResourceGroup.name,
        appServicePlanId: examplePlan.id,
        storageAccountName: exampleAccount.name,
        storageAccountAccessKey: exampleAccount.primaryAccessKey,
        osType: "linux",
        version: "~3",
    });
    
    resources:
      exampleResourceGroup:
        type: azure:core:ResourceGroup
        properties:
          location: West Europe
      exampleAccount:
        type: azure:storage:Account
        properties:
          resourceGroupName: ${exampleResourceGroup.name}
          location: ${exampleResourceGroup.location}
          accountTier: Standard
          accountReplicationType: LRS
      examplePlan:
        type: azure:appservice:Plan
        properties:
          location: ${exampleResourceGroup.location}
          resourceGroupName: ${exampleResourceGroup.name}
          kind: Linux
          reserved: true
          sku:
            tier: Dynamic
            size: Y1
      exampleFunctionApp:
        type: azure:appservice:FunctionApp
        properties:
          location: ${exampleResourceGroup.location}
          resourceGroupName: ${exampleResourceGroup.name}
          appServicePlanId: ${examplePlan.id}
          storageAccountName: ${exampleAccount.name}
          storageAccountAccessKey: ${exampleAccount.primaryAccessKey}
          osType: linux
          version: ~3
    

    Python In A Consumption Plan)

    Coming soon!

    Coming soon!

    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.Plan;
    import com.pulumi.azure.appservice.PlanArgs;
    import com.pulumi.azure.appservice.inputs.PlanSkuArgs;
    import com.pulumi.azure.appservice.FunctionApp;
    import com.pulumi.azure.appservice.FunctionAppArgs;
    import com.pulumi.azure.appservice.inputs.FunctionAppSiteConfigArgs;
    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 exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()        
                .location("West Europe")
                .build());
    
            var exampleAccount = new Account("exampleAccount", AccountArgs.builder()        
                .resourceGroupName(exampleResourceGroup.name())
                .location(exampleResourceGroup.location())
                .accountTier("Standard")
                .accountReplicationType("LRS")
                .build());
    
            var examplePlan = new Plan("examplePlan", PlanArgs.builder()        
                .location(exampleResourceGroup.location())
                .resourceGroupName(exampleResourceGroup.name())
                .kind("Linux")
                .reserved(true)
                .sku(PlanSkuArgs.builder()
                    .tier("Dynamic")
                    .size("Y1")
                    .build())
                .build());
    
            var exampleFunctionApp = new FunctionApp("exampleFunctionApp", FunctionAppArgs.builder()        
                .location(exampleResourceGroup.location())
                .resourceGroupName(exampleResourceGroup.name())
                .appServicePlanId(examplePlan.id())
                .storageAccountName(exampleAccount.name())
                .storageAccountAccessKey(exampleAccount.primaryAccessKey())
                .osType("linux")
                .version("~4")
                .appSettings(Map.of("FUNCTIONSWORKERRUNTIME", "python"))
                .siteConfig(FunctionAppSiteConfigArgs.builder()
                    .linuxFxVersion("python|3.9")
                    .build())
                .build());
    
        }
    }
    

    Coming soon!

    Coming soon!

    resources:
      exampleResourceGroup:
        type: azure:core:ResourceGroup
        properties:
          location: West Europe
      exampleAccount:
        type: azure:storage:Account
        properties:
          resourceGroupName: ${exampleResourceGroup.name}
          location: ${exampleResourceGroup.location}
          accountTier: Standard
          accountReplicationType: LRS
      examplePlan:
        type: azure:appservice:Plan
        properties:
          location: ${exampleResourceGroup.location}
          resourceGroupName: ${exampleResourceGroup.name}
          kind: Linux
          reserved: true
          sku:
            tier: Dynamic
            size: Y1
      exampleFunctionApp:
        type: azure:appservice:FunctionApp
        properties:
          location: ${exampleResourceGroup.location}
          resourceGroupName: ${exampleResourceGroup.name}
          appServicePlanId: ${examplePlan.id}
          storageAccountName: ${exampleAccount.name}
          storageAccountAccessKey: ${exampleAccount.primaryAccessKey}
          osType: linux
          version: ~4
          appSettings:
            - FUNCTIONSWORKERRUNTIME: python
          siteConfig:
            linuxFxVersion: python|3.9
    

    Create FunctionApp Resource

    new FunctionApp(name: string, args: FunctionAppArgs, opts?: CustomResourceOptions);
    @overload
    def FunctionApp(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    app_service_plan_id: Optional[str] = None,
                    app_settings: Optional[Mapping[str, str]] = None,
                    auth_settings: Optional[FunctionAppAuthSettingsArgs] = None,
                    client_cert_mode: Optional[str] = None,
                    connection_strings: Optional[Sequence[FunctionAppConnectionStringArgs]] = None,
                    daily_memory_time_quota: Optional[int] = None,
                    enable_builtin_logging: Optional[bool] = None,
                    enabled: Optional[bool] = None,
                    https_only: Optional[bool] = None,
                    identity: Optional[FunctionAppIdentityArgs] = None,
                    key_vault_reference_identity_id: Optional[str] = None,
                    location: Optional[str] = None,
                    name: Optional[str] = None,
                    os_type: Optional[str] = None,
                    resource_group_name: Optional[str] = None,
                    site_config: Optional[FunctionAppSiteConfigArgs] = None,
                    source_control: Optional[FunctionAppSourceControlArgs] = None,
                    storage_account_access_key: Optional[str] = None,
                    storage_account_name: Optional[str] = None,
                    tags: Optional[Mapping[str, str]] = None,
                    version: Optional[str] = None)
    @overload
    def FunctionApp(resource_name: str,
                    args: FunctionAppArgs,
                    opts: Optional[ResourceOptions] = None)
    func NewFunctionApp(ctx *Context, name string, args FunctionAppArgs, opts ...ResourceOption) (*FunctionApp, error)
    public FunctionApp(string name, FunctionAppArgs args, CustomResourceOptions? opts = null)
    public FunctionApp(String name, FunctionAppArgs args)
    public FunctionApp(String name, FunctionAppArgs args, CustomResourceOptions options)
    
    type: azure:appservice:FunctionApp
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args FunctionAppArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args FunctionAppArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args FunctionAppArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args FunctionAppArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args FunctionAppArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    FunctionApp Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The FunctionApp resource accepts the following input properties:

    AppServicePlanId string

    The ID of the App Service Plan within which to create this Function App.

    ResourceGroupName string

    The name of the resource group in which to create the Function App. Changing this forces a new resource to be created.

    StorageAccountAccessKey string

    The access key which will be used to access the backend storage account for the Function App.

    Note: When integrating a CI/CD pipeline and expecting to run from a deployed package in Azure you must seed your app settings as part of the application code for function app to be successfully deployed. Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "", "FUNCTIONS_WORKER_RUNTIME" = "node" (or python, etc), "WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1", "APPINSIGHTS_INSTRUMENTATIONKEY" = "").

    Note: When using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    StorageAccountName string

    The backend storage account name which will be used by this Function App (such as the dashboard, logs). Changing this forces a new resource to be created.

    AppSettings Dictionary<string, string>

    A map of key-value pairs for App Settings and custom values.

    NOTE: The values for AzureWebJobsStorage and FUNCTIONS_EXTENSION_VERSION will be filled by other input arguments and shouldn't be configured separately. AzureWebJobsStorage is filled based on storage_account_name and storage_account_access_key. FUNCTIONS_EXTENSION_VERSION is filled based on version.

    AuthSettings FunctionAppAuthSettings

    A auth_settings block as defined below.

    ClientCertMode string

    The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional.

    ConnectionStrings List<FunctionAppConnectionString>

    An connection_string block as defined below.

    DailyMemoryTimeQuota int

    The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan.

    EnableBuiltinLogging bool

    Should the built-in logging of this Function App be enabled? Defaults to true.

    Enabled bool

    Is the Function App enabled? Defaults to true.

    HttpsOnly bool

    Can the Function App only be accessed via HTTPS? Defaults to false.

    Identity FunctionAppIdentity

    An identity block as defined below.

    KeyVaultReferenceIdentityId string

    The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information.

    Location string

    Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

    Name string

    Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule.

    OsType string

    A string indicating the Operating System type for this function app. Possible values are linux and ``(empty string). Changing this forces a new resource to be created. Defaults to "".

    NOTE: This value will be linux for Linux derivatives, or an empty string for Windows (default). When set to linux you must also set azure.appservice.Plan arguments as kind = "Linux" and reserved = true

    SiteConfig FunctionAppSiteConfig

    A site_config object as defined below.

    SourceControl FunctionAppSourceControl

    A source_control block, as defined below.

    Tags Dictionary<string, string>

    A mapping of tags to assign to the resource.

    Version string

    The runtime version associated with the Function App. Defaults to ~1.

    AppServicePlanId string

    The ID of the App Service Plan within which to create this Function App.

    ResourceGroupName string

    The name of the resource group in which to create the Function App. Changing this forces a new resource to be created.

    StorageAccountAccessKey string

    The access key which will be used to access the backend storage account for the Function App.

    Note: When integrating a CI/CD pipeline and expecting to run from a deployed package in Azure you must seed your app settings as part of the application code for function app to be successfully deployed. Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "", "FUNCTIONS_WORKER_RUNTIME" = "node" (or python, etc), "WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1", "APPINSIGHTS_INSTRUMENTATIONKEY" = "").

    Note: When using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    StorageAccountName string

    The backend storage account name which will be used by this Function App (such as the dashboard, logs). Changing this forces a new resource to be created.

    AppSettings map[string]string

    A map of key-value pairs for App Settings and custom values.

    NOTE: The values for AzureWebJobsStorage and FUNCTIONS_EXTENSION_VERSION will be filled by other input arguments and shouldn't be configured separately. AzureWebJobsStorage is filled based on storage_account_name and storage_account_access_key. FUNCTIONS_EXTENSION_VERSION is filled based on version.

    AuthSettings FunctionAppAuthSettingsArgs

    A auth_settings block as defined below.

    ClientCertMode string

    The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional.

    ConnectionStrings []FunctionAppConnectionStringArgs

    An connection_string block as defined below.

    DailyMemoryTimeQuota int

    The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan.

    EnableBuiltinLogging bool

    Should the built-in logging of this Function App be enabled? Defaults to true.

    Enabled bool

    Is the Function App enabled? Defaults to true.

    HttpsOnly bool

    Can the Function App only be accessed via HTTPS? Defaults to false.

    Identity FunctionAppIdentityArgs

    An identity block as defined below.

    KeyVaultReferenceIdentityId string

    The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information.

    Location string

    Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

    Name string

    Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule.

    OsType string

    A string indicating the Operating System type for this function app. Possible values are linux and ``(empty string). Changing this forces a new resource to be created. Defaults to "".

    NOTE: This value will be linux for Linux derivatives, or an empty string for Windows (default). When set to linux you must also set azure.appservice.Plan arguments as kind = "Linux" and reserved = true

    SiteConfig FunctionAppSiteConfigArgs

    A site_config object as defined below.

    SourceControl FunctionAppSourceControlArgs

    A source_control block, as defined below.

    Tags map[string]string

    A mapping of tags to assign to the resource.

    Version string

    The runtime version associated with the Function App. Defaults to ~1.

    appServicePlanId String

    The ID of the App Service Plan within which to create this Function App.

    resourceGroupName String

    The name of the resource group in which to create the Function App. Changing this forces a new resource to be created.

    storageAccountAccessKey String

    The access key which will be used to access the backend storage account for the Function App.

    Note: When integrating a CI/CD pipeline and expecting to run from a deployed package in Azure you must seed your app settings as part of the application code for function app to be successfully deployed. Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "", "FUNCTIONS_WORKER_RUNTIME" = "node" (or python, etc), "WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1", "APPINSIGHTS_INSTRUMENTATIONKEY" = "").

    Note: When using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    storageAccountName String

    The backend storage account name which will be used by this Function App (such as the dashboard, logs). Changing this forces a new resource to be created.

    appSettings Map<String,String>

    A map of key-value pairs for App Settings and custom values.

    NOTE: The values for AzureWebJobsStorage and FUNCTIONS_EXTENSION_VERSION will be filled by other input arguments and shouldn't be configured separately. AzureWebJobsStorage is filled based on storage_account_name and storage_account_access_key. FUNCTIONS_EXTENSION_VERSION is filled based on version.

    authSettings FunctionAppAuthSettings

    A auth_settings block as defined below.

    clientCertMode String

    The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional.

    connectionStrings List<FunctionAppConnectionString>

    An connection_string block as defined below.

    dailyMemoryTimeQuota Integer

    The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan.

    enableBuiltinLogging Boolean

    Should the built-in logging of this Function App be enabled? Defaults to true.

    enabled Boolean

    Is the Function App enabled? Defaults to true.

    httpsOnly Boolean

    Can the Function App only be accessed via HTTPS? Defaults to false.

    identity FunctionAppIdentity

    An identity block as defined below.

    keyVaultReferenceIdentityId String

    The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information.

    location String

    Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

    name String

    Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule.

    osType String

    A string indicating the Operating System type for this function app. Possible values are linux and ``(empty string). Changing this forces a new resource to be created. Defaults to "".

    NOTE: This value will be linux for Linux derivatives, or an empty string for Windows (default). When set to linux you must also set azure.appservice.Plan arguments as kind = "Linux" and reserved = true

    siteConfig FunctionAppSiteConfig

    A site_config object as defined below.

    sourceControl FunctionAppSourceControl

    A source_control block, as defined below.

    tags Map<String,String>

    A mapping of tags to assign to the resource.

    version String

    The runtime version associated with the Function App. Defaults to ~1.

    appServicePlanId string

    The ID of the App Service Plan within which to create this Function App.

    resourceGroupName string

    The name of the resource group in which to create the Function App. Changing this forces a new resource to be created.

    storageAccountAccessKey string

    The access key which will be used to access the backend storage account for the Function App.

    Note: When integrating a CI/CD pipeline and expecting to run from a deployed package in Azure you must seed your app settings as part of the application code for function app to be successfully deployed. Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "", "FUNCTIONS_WORKER_RUNTIME" = "node" (or python, etc), "WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1", "APPINSIGHTS_INSTRUMENTATIONKEY" = "").

    Note: When using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    storageAccountName string

    The backend storage account name which will be used by this Function App (such as the dashboard, logs). Changing this forces a new resource to be created.

    appSettings {[key: string]: string}

    A map of key-value pairs for App Settings and custom values.

    NOTE: The values for AzureWebJobsStorage and FUNCTIONS_EXTENSION_VERSION will be filled by other input arguments and shouldn't be configured separately. AzureWebJobsStorage is filled based on storage_account_name and storage_account_access_key. FUNCTIONS_EXTENSION_VERSION is filled based on version.

    authSettings FunctionAppAuthSettings

    A auth_settings block as defined below.

    clientCertMode string

    The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional.

    connectionStrings FunctionAppConnectionString[]

    An connection_string block as defined below.

    dailyMemoryTimeQuota number

    The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan.

    enableBuiltinLogging boolean

    Should the built-in logging of this Function App be enabled? Defaults to true.

    enabled boolean

    Is the Function App enabled? Defaults to true.

    httpsOnly boolean

    Can the Function App only be accessed via HTTPS? Defaults to false.

    identity FunctionAppIdentity

    An identity block as defined below.

    keyVaultReferenceIdentityId string

    The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information.

    location string

    Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

    name string

    Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule.

    osType string

    A string indicating the Operating System type for this function app. Possible values are linux and ``(empty string). Changing this forces a new resource to be created. Defaults to "".

    NOTE: This value will be linux for Linux derivatives, or an empty string for Windows (default). When set to linux you must also set azure.appservice.Plan arguments as kind = "Linux" and reserved = true

    siteConfig FunctionAppSiteConfig

    A site_config object as defined below.

    sourceControl FunctionAppSourceControl

    A source_control block, as defined below.

    tags {[key: string]: string}

    A mapping of tags to assign to the resource.

    version string

    The runtime version associated with the Function App. Defaults to ~1.

    app_service_plan_id str

    The ID of the App Service Plan within which to create this Function App.

    resource_group_name str

    The name of the resource group in which to create the Function App. Changing this forces a new resource to be created.

    storage_account_access_key str

    The access key which will be used to access the backend storage account for the Function App.

    Note: When integrating a CI/CD pipeline and expecting to run from a deployed package in Azure you must seed your app settings as part of the application code for function app to be successfully deployed. Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "", "FUNCTIONS_WORKER_RUNTIME" = "node" (or python, etc), "WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1", "APPINSIGHTS_INSTRUMENTATIONKEY" = "").

    Note: When using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    storage_account_name str

    The backend storage account name which will be used by this Function App (such as the dashboard, logs). Changing this forces a new resource to be created.

    app_settings Mapping[str, str]

    A map of key-value pairs for App Settings and custom values.

    NOTE: The values for AzureWebJobsStorage and FUNCTIONS_EXTENSION_VERSION will be filled by other input arguments and shouldn't be configured separately. AzureWebJobsStorage is filled based on storage_account_name and storage_account_access_key. FUNCTIONS_EXTENSION_VERSION is filled based on version.

    auth_settings FunctionAppAuthSettingsArgs

    A auth_settings block as defined below.

    client_cert_mode str

    The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional.

    connection_strings Sequence[FunctionAppConnectionStringArgs]

    An connection_string block as defined below.

    daily_memory_time_quota int

    The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan.

    enable_builtin_logging bool

    Should the built-in logging of this Function App be enabled? Defaults to true.

    enabled bool

    Is the Function App enabled? Defaults to true.

    https_only bool

    Can the Function App only be accessed via HTTPS? Defaults to false.

    identity FunctionAppIdentityArgs

    An identity block as defined below.

    key_vault_reference_identity_id str

    The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information.

    location str

    Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

    name str

    Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule.

    os_type str

    A string indicating the Operating System type for this function app. Possible values are linux and ``(empty string). Changing this forces a new resource to be created. Defaults to "".

    NOTE: This value will be linux for Linux derivatives, or an empty string for Windows (default). When set to linux you must also set azure.appservice.Plan arguments as kind = "Linux" and reserved = true

    site_config FunctionAppSiteConfigArgs

    A site_config object as defined below.

    source_control FunctionAppSourceControlArgs

    A source_control block, as defined below.

    tags Mapping[str, str]

    A mapping of tags to assign to the resource.

    version str

    The runtime version associated with the Function App. Defaults to ~1.

    appServicePlanId String

    The ID of the App Service Plan within which to create this Function App.

    resourceGroupName String

    The name of the resource group in which to create the Function App. Changing this forces a new resource to be created.

    storageAccountAccessKey String

    The access key which will be used to access the backend storage account for the Function App.

    Note: When integrating a CI/CD pipeline and expecting to run from a deployed package in Azure you must seed your app settings as part of the application code for function app to be successfully deployed. Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "", "FUNCTIONS_WORKER_RUNTIME" = "node" (or python, etc), "WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1", "APPINSIGHTS_INSTRUMENTATIONKEY" = "").

    Note: When using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    storageAccountName String

    The backend storage account name which will be used by this Function App (such as the dashboard, logs). Changing this forces a new resource to be created.

    appSettings Map<String>

    A map of key-value pairs for App Settings and custom values.

    NOTE: The values for AzureWebJobsStorage and FUNCTIONS_EXTENSION_VERSION will be filled by other input arguments and shouldn't be configured separately. AzureWebJobsStorage is filled based on storage_account_name and storage_account_access_key. FUNCTIONS_EXTENSION_VERSION is filled based on version.

    authSettings Property Map

    A auth_settings block as defined below.

    clientCertMode String

    The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional.

    connectionStrings List<Property Map>

    An connection_string block as defined below.

    dailyMemoryTimeQuota Number

    The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan.

    enableBuiltinLogging Boolean

    Should the built-in logging of this Function App be enabled? Defaults to true.

    enabled Boolean

    Is the Function App enabled? Defaults to true.

    httpsOnly Boolean

    Can the Function App only be accessed via HTTPS? Defaults to false.

    identity Property Map

    An identity block as defined below.

    keyVaultReferenceIdentityId String

    The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information.

    location String

    Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

    name String

    Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule.

    osType String

    A string indicating the Operating System type for this function app. Possible values are linux and ``(empty string). Changing this forces a new resource to be created. Defaults to "".

    NOTE: This value will be linux for Linux derivatives, or an empty string for Windows (default). When set to linux you must also set azure.appservice.Plan arguments as kind = "Linux" and reserved = true

    siteConfig Property Map

    A site_config object as defined below.

    sourceControl Property Map

    A source_control block, as defined below.

    tags Map<String>

    A mapping of tags to assign to the resource.

    version String

    The runtime version associated with the Function App. Defaults to ~1.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the FunctionApp resource produces the following output properties:

    CustomDomainVerificationId string

    An identifier used by App Service to perform domain ownership verification via DNS TXT record.

    DefaultHostname string

    The default hostname associated with the Function App - such as mysite.azurewebsites.net

    Id string

    The provider-assigned unique ID for this managed resource.

    Kind string

    The Function App kind - such as functionapp,linux,container

    OutboundIpAddresses string

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12

    PossibleOutboundIpAddresses string

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound_ip_addresses.

    SiteCredentials List<FunctionAppSiteCredential>

    A site_credential block as defined below, which contains the site-level credentials used to publish to this App Service.

    CustomDomainVerificationId string

    An identifier used by App Service to perform domain ownership verification via DNS TXT record.

    DefaultHostname string

    The default hostname associated with the Function App - such as mysite.azurewebsites.net

    Id string

    The provider-assigned unique ID for this managed resource.

    Kind string

    The Function App kind - such as functionapp,linux,container

    OutboundIpAddresses string

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12

    PossibleOutboundIpAddresses string

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound_ip_addresses.

    SiteCredentials []FunctionAppSiteCredential

    A site_credential block as defined below, which contains the site-level credentials used to publish to this App Service.

    customDomainVerificationId String

    An identifier used by App Service to perform domain ownership verification via DNS TXT record.

    defaultHostname String

    The default hostname associated with the Function App - such as mysite.azurewebsites.net

    id String

    The provider-assigned unique ID for this managed resource.

    kind String

    The Function App kind - such as functionapp,linux,container

    outboundIpAddresses String

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12

    possibleOutboundIpAddresses String

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound_ip_addresses.

    siteCredentials List<FunctionAppSiteCredential>

    A site_credential block as defined below, which contains the site-level credentials used to publish to this App Service.

    customDomainVerificationId string

    An identifier used by App Service to perform domain ownership verification via DNS TXT record.

    defaultHostname string

    The default hostname associated with the Function App - such as mysite.azurewebsites.net

    id string

    The provider-assigned unique ID for this managed resource.

    kind string

    The Function App kind - such as functionapp,linux,container

    outboundIpAddresses string

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12

    possibleOutboundIpAddresses string

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound_ip_addresses.

    siteCredentials FunctionAppSiteCredential[]

    A site_credential block as defined below, which contains the site-level credentials used to publish to this App Service.

    custom_domain_verification_id str

    An identifier used by App Service to perform domain ownership verification via DNS TXT record.

    default_hostname str

    The default hostname associated with the Function App - such as mysite.azurewebsites.net

    id str

    The provider-assigned unique ID for this managed resource.

    kind str

    The Function App kind - such as functionapp,linux,container

    outbound_ip_addresses str

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12

    possible_outbound_ip_addresses str

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound_ip_addresses.

    site_credentials Sequence[FunctionAppSiteCredential]

    A site_credential block as defined below, which contains the site-level credentials used to publish to this App Service.

    customDomainVerificationId String

    An identifier used by App Service to perform domain ownership verification via DNS TXT record.

    defaultHostname String

    The default hostname associated with the Function App - such as mysite.azurewebsites.net

    id String

    The provider-assigned unique ID for this managed resource.

    kind String

    The Function App kind - such as functionapp,linux,container

    outboundIpAddresses String

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12

    possibleOutboundIpAddresses String

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound_ip_addresses.

    siteCredentials List<Property Map>

    A site_credential block as defined below, which contains the site-level credentials used to publish to this App Service.

    Look up Existing FunctionApp Resource

    Get an existing FunctionApp resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: FunctionAppState, opts?: CustomResourceOptions): FunctionApp
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            app_service_plan_id: Optional[str] = None,
            app_settings: Optional[Mapping[str, str]] = None,
            auth_settings: Optional[FunctionAppAuthSettingsArgs] = None,
            client_cert_mode: Optional[str] = None,
            connection_strings: Optional[Sequence[FunctionAppConnectionStringArgs]] = None,
            custom_domain_verification_id: Optional[str] = None,
            daily_memory_time_quota: Optional[int] = None,
            default_hostname: Optional[str] = None,
            enable_builtin_logging: Optional[bool] = None,
            enabled: Optional[bool] = None,
            https_only: Optional[bool] = None,
            identity: Optional[FunctionAppIdentityArgs] = None,
            key_vault_reference_identity_id: Optional[str] = None,
            kind: Optional[str] = None,
            location: Optional[str] = None,
            name: Optional[str] = None,
            os_type: Optional[str] = None,
            outbound_ip_addresses: Optional[str] = None,
            possible_outbound_ip_addresses: Optional[str] = None,
            resource_group_name: Optional[str] = None,
            site_config: Optional[FunctionAppSiteConfigArgs] = None,
            site_credentials: Optional[Sequence[FunctionAppSiteCredentialArgs]] = None,
            source_control: Optional[FunctionAppSourceControlArgs] = None,
            storage_account_access_key: Optional[str] = None,
            storage_account_name: Optional[str] = None,
            tags: Optional[Mapping[str, str]] = None,
            version: Optional[str] = None) -> FunctionApp
    func GetFunctionApp(ctx *Context, name string, id IDInput, state *FunctionAppState, opts ...ResourceOption) (*FunctionApp, error)
    public static FunctionApp Get(string name, Input<string> id, FunctionAppState? state, CustomResourceOptions? opts = null)
    public static FunctionApp get(String name, Output<String> id, FunctionAppState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AppServicePlanId string

    The ID of the App Service Plan within which to create this Function App.

    AppSettings Dictionary<string, string>

    A map of key-value pairs for App Settings and custom values.

    NOTE: The values for AzureWebJobsStorage and FUNCTIONS_EXTENSION_VERSION will be filled by other input arguments and shouldn't be configured separately. AzureWebJobsStorage is filled based on storage_account_name and storage_account_access_key. FUNCTIONS_EXTENSION_VERSION is filled based on version.

    AuthSettings FunctionAppAuthSettings

    A auth_settings block as defined below.

    ClientCertMode string

    The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional.

    ConnectionStrings List<FunctionAppConnectionString>

    An connection_string block as defined below.

    CustomDomainVerificationId string

    An identifier used by App Service to perform domain ownership verification via DNS TXT record.

    DailyMemoryTimeQuota int

    The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan.

    DefaultHostname string

    The default hostname associated with the Function App - such as mysite.azurewebsites.net

    EnableBuiltinLogging bool

    Should the built-in logging of this Function App be enabled? Defaults to true.

    Enabled bool

    Is the Function App enabled? Defaults to true.

    HttpsOnly bool

    Can the Function App only be accessed via HTTPS? Defaults to false.

    Identity FunctionAppIdentity

    An identity block as defined below.

    KeyVaultReferenceIdentityId string

    The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information.

    Kind string

    The Function App kind - such as functionapp,linux,container

    Location string

    Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

    Name string

    Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule.

    OsType string

    A string indicating the Operating System type for this function app. Possible values are linux and ``(empty string). Changing this forces a new resource to be created. Defaults to "".

    NOTE: This value will be linux for Linux derivatives, or an empty string for Windows (default). When set to linux you must also set azure.appservice.Plan arguments as kind = "Linux" and reserved = true

    OutboundIpAddresses string

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12

    PossibleOutboundIpAddresses string

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound_ip_addresses.

    ResourceGroupName string

    The name of the resource group in which to create the Function App. Changing this forces a new resource to be created.

    SiteConfig FunctionAppSiteConfig

    A site_config object as defined below.

    SiteCredentials List<FunctionAppSiteCredential>

    A site_credential block as defined below, which contains the site-level credentials used to publish to this App Service.

    SourceControl FunctionAppSourceControl

    A source_control block, as defined below.

    StorageAccountAccessKey string

    The access key which will be used to access the backend storage account for the Function App.

    Note: When integrating a CI/CD pipeline and expecting to run from a deployed package in Azure you must seed your app settings as part of the application code for function app to be successfully deployed. Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "", "FUNCTIONS_WORKER_RUNTIME" = "node" (or python, etc), "WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1", "APPINSIGHTS_INSTRUMENTATIONKEY" = "").

    Note: When using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    StorageAccountName string

    The backend storage account name which will be used by this Function App (such as the dashboard, logs). Changing this forces a new resource to be created.

    Tags Dictionary<string, string>

    A mapping of tags to assign to the resource.

    Version string

    The runtime version associated with the Function App. Defaults to ~1.

    AppServicePlanId string

    The ID of the App Service Plan within which to create this Function App.

    AppSettings map[string]string

    A map of key-value pairs for App Settings and custom values.

    NOTE: The values for AzureWebJobsStorage and FUNCTIONS_EXTENSION_VERSION will be filled by other input arguments and shouldn't be configured separately. AzureWebJobsStorage is filled based on storage_account_name and storage_account_access_key. FUNCTIONS_EXTENSION_VERSION is filled based on version.

    AuthSettings FunctionAppAuthSettingsArgs

    A auth_settings block as defined below.

    ClientCertMode string

    The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional.

    ConnectionStrings []FunctionAppConnectionStringArgs

    An connection_string block as defined below.

    CustomDomainVerificationId string

    An identifier used by App Service to perform domain ownership verification via DNS TXT record.

    DailyMemoryTimeQuota int

    The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan.

    DefaultHostname string

    The default hostname associated with the Function App - such as mysite.azurewebsites.net

    EnableBuiltinLogging bool

    Should the built-in logging of this Function App be enabled? Defaults to true.

    Enabled bool

    Is the Function App enabled? Defaults to true.

    HttpsOnly bool

    Can the Function App only be accessed via HTTPS? Defaults to false.

    Identity FunctionAppIdentityArgs

    An identity block as defined below.

    KeyVaultReferenceIdentityId string

    The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information.

    Kind string

    The Function App kind - such as functionapp,linux,container

    Location string

    Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

    Name string

    Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule.

    OsType string

    A string indicating the Operating System type for this function app. Possible values are linux and ``(empty string). Changing this forces a new resource to be created. Defaults to "".

    NOTE: This value will be linux for Linux derivatives, or an empty string for Windows (default). When set to linux you must also set azure.appservice.Plan arguments as kind = "Linux" and reserved = true

    OutboundIpAddresses string

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12

    PossibleOutboundIpAddresses string

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound_ip_addresses.

    ResourceGroupName string

    The name of the resource group in which to create the Function App. Changing this forces a new resource to be created.

    SiteConfig FunctionAppSiteConfigArgs

    A site_config object as defined below.

    SiteCredentials []FunctionAppSiteCredentialArgs

    A site_credential block as defined below, which contains the site-level credentials used to publish to this App Service.

    SourceControl FunctionAppSourceControlArgs

    A source_control block, as defined below.

    StorageAccountAccessKey string

    The access key which will be used to access the backend storage account for the Function App.

    Note: When integrating a CI/CD pipeline and expecting to run from a deployed package in Azure you must seed your app settings as part of the application code for function app to be successfully deployed. Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "", "FUNCTIONS_WORKER_RUNTIME" = "node" (or python, etc), "WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1", "APPINSIGHTS_INSTRUMENTATIONKEY" = "").

    Note: When using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    StorageAccountName string

    The backend storage account name which will be used by this Function App (such as the dashboard, logs). Changing this forces a new resource to be created.

    Tags map[string]string

    A mapping of tags to assign to the resource.

    Version string

    The runtime version associated with the Function App. Defaults to ~1.

    appServicePlanId String

    The ID of the App Service Plan within which to create this Function App.

    appSettings Map<String,String>

    A map of key-value pairs for App Settings and custom values.

    NOTE: The values for AzureWebJobsStorage and FUNCTIONS_EXTENSION_VERSION will be filled by other input arguments and shouldn't be configured separately. AzureWebJobsStorage is filled based on storage_account_name and storage_account_access_key. FUNCTIONS_EXTENSION_VERSION is filled based on version.

    authSettings FunctionAppAuthSettings

    A auth_settings block as defined below.

    clientCertMode String

    The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional.

    connectionStrings List<FunctionAppConnectionString>

    An connection_string block as defined below.

    customDomainVerificationId String

    An identifier used by App Service to perform domain ownership verification via DNS TXT record.

    dailyMemoryTimeQuota Integer

    The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan.

    defaultHostname String

    The default hostname associated with the Function App - such as mysite.azurewebsites.net

    enableBuiltinLogging Boolean

    Should the built-in logging of this Function App be enabled? Defaults to true.

    enabled Boolean

    Is the Function App enabled? Defaults to true.

    httpsOnly Boolean

    Can the Function App only be accessed via HTTPS? Defaults to false.

    identity FunctionAppIdentity

    An identity block as defined below.

    keyVaultReferenceIdentityId String

    The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information.

    kind String

    The Function App kind - such as functionapp,linux,container

    location String

    Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

    name String

    Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule.

    osType String

    A string indicating the Operating System type for this function app. Possible values are linux and ``(empty string). Changing this forces a new resource to be created. Defaults to "".

    NOTE: This value will be linux for Linux derivatives, or an empty string for Windows (default). When set to linux you must also set azure.appservice.Plan arguments as kind = "Linux" and reserved = true

    outboundIpAddresses String

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12

    possibleOutboundIpAddresses String

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound_ip_addresses.

    resourceGroupName String

    The name of the resource group in which to create the Function App. Changing this forces a new resource to be created.

    siteConfig FunctionAppSiteConfig

    A site_config object as defined below.

    siteCredentials List<FunctionAppSiteCredential>

    A site_credential block as defined below, which contains the site-level credentials used to publish to this App Service.

    sourceControl FunctionAppSourceControl

    A source_control block, as defined below.

    storageAccountAccessKey String

    The access key which will be used to access the backend storage account for the Function App.

    Note: When integrating a CI/CD pipeline and expecting to run from a deployed package in Azure you must seed your app settings as part of the application code for function app to be successfully deployed. Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "", "FUNCTIONS_WORKER_RUNTIME" = "node" (or python, etc), "WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1", "APPINSIGHTS_INSTRUMENTATIONKEY" = "").

    Note: When using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    storageAccountName String

    The backend storage account name which will be used by this Function App (such as the dashboard, logs). Changing this forces a new resource to be created.

    tags Map<String,String>

    A mapping of tags to assign to the resource.

    version String

    The runtime version associated with the Function App. Defaults to ~1.

    appServicePlanId string

    The ID of the App Service Plan within which to create this Function App.

    appSettings {[key: string]: string}

    A map of key-value pairs for App Settings and custom values.

    NOTE: The values for AzureWebJobsStorage and FUNCTIONS_EXTENSION_VERSION will be filled by other input arguments and shouldn't be configured separately. AzureWebJobsStorage is filled based on storage_account_name and storage_account_access_key. FUNCTIONS_EXTENSION_VERSION is filled based on version.

    authSettings FunctionAppAuthSettings

    A auth_settings block as defined below.

    clientCertMode string

    The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional.

    connectionStrings FunctionAppConnectionString[]

    An connection_string block as defined below.

    customDomainVerificationId string

    An identifier used by App Service to perform domain ownership verification via DNS TXT record.

    dailyMemoryTimeQuota number

    The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan.

    defaultHostname string

    The default hostname associated with the Function App - such as mysite.azurewebsites.net

    enableBuiltinLogging boolean

    Should the built-in logging of this Function App be enabled? Defaults to true.

    enabled boolean

    Is the Function App enabled? Defaults to true.

    httpsOnly boolean

    Can the Function App only be accessed via HTTPS? Defaults to false.

    identity FunctionAppIdentity

    An identity block as defined below.

    keyVaultReferenceIdentityId string

    The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information.

    kind string

    The Function App kind - such as functionapp,linux,container

    location string

    Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

    name string

    Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule.

    osType string

    A string indicating the Operating System type for this function app. Possible values are linux and ``(empty string). Changing this forces a new resource to be created. Defaults to "".

    NOTE: This value will be linux for Linux derivatives, or an empty string for Windows (default). When set to linux you must also set azure.appservice.Plan arguments as kind = "Linux" and reserved = true

    outboundIpAddresses string

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12

    possibleOutboundIpAddresses string

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound_ip_addresses.

    resourceGroupName string

    The name of the resource group in which to create the Function App. Changing this forces a new resource to be created.

    siteConfig FunctionAppSiteConfig

    A site_config object as defined below.

    siteCredentials FunctionAppSiteCredential[]

    A site_credential block as defined below, which contains the site-level credentials used to publish to this App Service.

    sourceControl FunctionAppSourceControl

    A source_control block, as defined below.

    storageAccountAccessKey string

    The access key which will be used to access the backend storage account for the Function App.

    Note: When integrating a CI/CD pipeline and expecting to run from a deployed package in Azure you must seed your app settings as part of the application code for function app to be successfully deployed. Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "", "FUNCTIONS_WORKER_RUNTIME" = "node" (or python, etc), "WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1", "APPINSIGHTS_INSTRUMENTATIONKEY" = "").

    Note: When using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    storageAccountName string

    The backend storage account name which will be used by this Function App (such as the dashboard, logs). Changing this forces a new resource to be created.

    tags {[key: string]: string}

    A mapping of tags to assign to the resource.

    version string

    The runtime version associated with the Function App. Defaults to ~1.

    app_service_plan_id str

    The ID of the App Service Plan within which to create this Function App.

    app_settings Mapping[str, str]

    A map of key-value pairs for App Settings and custom values.

    NOTE: The values for AzureWebJobsStorage and FUNCTIONS_EXTENSION_VERSION will be filled by other input arguments and shouldn't be configured separately. AzureWebJobsStorage is filled based on storage_account_name and storage_account_access_key. FUNCTIONS_EXTENSION_VERSION is filled based on version.

    auth_settings FunctionAppAuthSettingsArgs

    A auth_settings block as defined below.

    client_cert_mode str

    The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional.

    connection_strings Sequence[FunctionAppConnectionStringArgs]

    An connection_string block as defined below.

    custom_domain_verification_id str

    An identifier used by App Service to perform domain ownership verification via DNS TXT record.

    daily_memory_time_quota int

    The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan.

    default_hostname str

    The default hostname associated with the Function App - such as mysite.azurewebsites.net

    enable_builtin_logging bool

    Should the built-in logging of this Function App be enabled? Defaults to true.

    enabled bool

    Is the Function App enabled? Defaults to true.

    https_only bool

    Can the Function App only be accessed via HTTPS? Defaults to false.

    identity FunctionAppIdentityArgs

    An identity block as defined below.

    key_vault_reference_identity_id str

    The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information.

    kind str

    The Function App kind - such as functionapp,linux,container

    location str

    Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

    name str

    Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule.

    os_type str

    A string indicating the Operating System type for this function app. Possible values are linux and ``(empty string). Changing this forces a new resource to be created. Defaults to "".

    NOTE: This value will be linux for Linux derivatives, or an empty string for Windows (default). When set to linux you must also set azure.appservice.Plan arguments as kind = "Linux" and reserved = true

    outbound_ip_addresses str

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12

    possible_outbound_ip_addresses str

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound_ip_addresses.

    resource_group_name str

    The name of the resource group in which to create the Function App. Changing this forces a new resource to be created.

    site_config FunctionAppSiteConfigArgs

    A site_config object as defined below.

    site_credentials Sequence[FunctionAppSiteCredentialArgs]

    A site_credential block as defined below, which contains the site-level credentials used to publish to this App Service.

    source_control FunctionAppSourceControlArgs

    A source_control block, as defined below.

    storage_account_access_key str

    The access key which will be used to access the backend storage account for the Function App.

    Note: When integrating a CI/CD pipeline and expecting to run from a deployed package in Azure you must seed your app settings as part of the application code for function app to be successfully deployed. Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "", "FUNCTIONS_WORKER_RUNTIME" = "node" (or python, etc), "WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1", "APPINSIGHTS_INSTRUMENTATIONKEY" = "").

    Note: When using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    storage_account_name str

    The backend storage account name which will be used by this Function App (such as the dashboard, logs). Changing this forces a new resource to be created.

    tags Mapping[str, str]

    A mapping of tags to assign to the resource.

    version str

    The runtime version associated with the Function App. Defaults to ~1.

    appServicePlanId String

    The ID of the App Service Plan within which to create this Function App.

    appSettings Map<String>

    A map of key-value pairs for App Settings and custom values.

    NOTE: The values for AzureWebJobsStorage and FUNCTIONS_EXTENSION_VERSION will be filled by other input arguments and shouldn't be configured separately. AzureWebJobsStorage is filled based on storage_account_name and storage_account_access_key. FUNCTIONS_EXTENSION_VERSION is filled based on version.

    authSettings Property Map

    A auth_settings block as defined below.

    clientCertMode String

    The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional.

    connectionStrings List<Property Map>

    An connection_string block as defined below.

    customDomainVerificationId String

    An identifier used by App Service to perform domain ownership verification via DNS TXT record.

    dailyMemoryTimeQuota Number

    The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan.

    defaultHostname String

    The default hostname associated with the Function App - such as mysite.azurewebsites.net

    enableBuiltinLogging Boolean

    Should the built-in logging of this Function App be enabled? Defaults to true.

    enabled Boolean

    Is the Function App enabled? Defaults to true.

    httpsOnly Boolean

    Can the Function App only be accessed via HTTPS? Defaults to false.

    identity Property Map

    An identity block as defined below.

    keyVaultReferenceIdentityId String

    The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information.

    kind String

    The Function App kind - such as functionapp,linux,container

    location String

    Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

    name String

    Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule.

    osType String

    A string indicating the Operating System type for this function app. Possible values are linux and ``(empty string). Changing this forces a new resource to be created. Defaults to "".

    NOTE: This value will be linux for Linux derivatives, or an empty string for Windows (default). When set to linux you must also set azure.appservice.Plan arguments as kind = "Linux" and reserved = true

    outboundIpAddresses String

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12

    possibleOutboundIpAddresses String

    A comma separated list of outbound IP addresses - such as 52.23.25.3,52.143.43.12,52.143.43.17 - not all of which are necessarily in use. Superset of outbound_ip_addresses.

    resourceGroupName String

    The name of the resource group in which to create the Function App. Changing this forces a new resource to be created.

    siteConfig Property Map

    A site_config object as defined below.

    siteCredentials List<Property Map>

    A site_credential block as defined below, which contains the site-level credentials used to publish to this App Service.

    sourceControl Property Map

    A source_control block, as defined below.

    storageAccountAccessKey String

    The access key which will be used to access the backend storage account for the Function App.

    Note: When integrating a CI/CD pipeline and expecting to run from a deployed package in Azure you must seed your app settings as part of the application code for function app to be successfully deployed. Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "", "FUNCTIONS_WORKER_RUNTIME" = "node" (or python, etc), "WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1", "APPINSIGHTS_INSTRUMENTATIONKEY" = "").

    Note: When using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    storageAccountName String

    The backend storage account name which will be used by this Function App (such as the dashboard, logs). Changing this forces a new resource to be created.

    tags Map<String>

    A mapping of tags to assign to the resource.

    version String

    The runtime version associated with the Function App. Defaults to ~1.

    Supporting Types

    FunctionAppAuthSettings, FunctionAppAuthSettingsArgs

    Enabled bool

    Is Authentication enabled?

    ActiveDirectory FunctionAppAuthSettingsActiveDirectory

    A active_directory block as defined below.

    AdditionalLoginParams Dictionary<string, string>

    Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value".

    AllowedExternalRedirectUrls List<string>

    External URLs that can be redirected to as part of logging in or logging out of the app.

    DefaultProvider string

    The default provider to use when multiple providers have been set up. Possible values are AzureActiveDirectory, Facebook, Google, MicrosoftAccount and Twitter.

    NOTE: When using multiple providers, the default provider must be set for settings like unauthenticated_client_action to work.

    Facebook FunctionAppAuthSettingsFacebook

    A facebook block as defined below.

    Google FunctionAppAuthSettingsGoogle

    A google block as defined below.

    Issuer string

    Issuer URI. When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/.

    Microsoft FunctionAppAuthSettingsMicrosoft

    A microsoft block as defined below.

    RuntimeVersion string

    The runtime version of the Authentication/Authorization module.

    TokenRefreshExtensionHours double

    The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72.

    TokenStoreEnabled bool

    If enabled the module will durably store platform-specific security tokens that are obtained during login flows. Defaults to false.

    Twitter FunctionAppAuthSettingsTwitter

    A twitter block as defined below.

    UnauthenticatedClientAction string

    The action to take when an unauthenticated client attempts to access the app. Possible values are AllowAnonymous and RedirectToLoginPage.

    Enabled bool

    Is Authentication enabled?

    ActiveDirectory FunctionAppAuthSettingsActiveDirectory

    A active_directory block as defined below.

    AdditionalLoginParams map[string]string

    Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value".

    AllowedExternalRedirectUrls []string

    External URLs that can be redirected to as part of logging in or logging out of the app.

    DefaultProvider string

    The default provider to use when multiple providers have been set up. Possible values are AzureActiveDirectory, Facebook, Google, MicrosoftAccount and Twitter.

    NOTE: When using multiple providers, the default provider must be set for settings like unauthenticated_client_action to work.

    Facebook FunctionAppAuthSettingsFacebook

    A facebook block as defined below.

    Google FunctionAppAuthSettingsGoogle

    A google block as defined below.

    Issuer string

    Issuer URI. When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/.

    Microsoft FunctionAppAuthSettingsMicrosoft

    A microsoft block as defined below.

    RuntimeVersion string

    The runtime version of the Authentication/Authorization module.

    TokenRefreshExtensionHours float64

    The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72.

    TokenStoreEnabled bool

    If enabled the module will durably store platform-specific security tokens that are obtained during login flows. Defaults to false.

    Twitter FunctionAppAuthSettingsTwitter

    A twitter block as defined below.

    UnauthenticatedClientAction string

    The action to take when an unauthenticated client attempts to access the app. Possible values are AllowAnonymous and RedirectToLoginPage.

    enabled Boolean

    Is Authentication enabled?

    activeDirectory FunctionAppAuthSettingsActiveDirectory

    A active_directory block as defined below.

    additionalLoginParams Map<String,String>

    Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value".

    allowedExternalRedirectUrls List<String>

    External URLs that can be redirected to as part of logging in or logging out of the app.

    defaultProvider String

    The default provider to use when multiple providers have been set up. Possible values are AzureActiveDirectory, Facebook, Google, MicrosoftAccount and Twitter.

    NOTE: When using multiple providers, the default provider must be set for settings like unauthenticated_client_action to work.

    facebook FunctionAppAuthSettingsFacebook

    A facebook block as defined below.

    google FunctionAppAuthSettingsGoogle

    A google block as defined below.

    issuer String

    Issuer URI. When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/.

    microsoft FunctionAppAuthSettingsMicrosoft

    A microsoft block as defined below.

    runtimeVersion String

    The runtime version of the Authentication/Authorization module.

    tokenRefreshExtensionHours Double

    The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72.

    tokenStoreEnabled Boolean

    If enabled the module will durably store platform-specific security tokens that are obtained during login flows. Defaults to false.

    twitter FunctionAppAuthSettingsTwitter

    A twitter block as defined below.

    unauthenticatedClientAction String

    The action to take when an unauthenticated client attempts to access the app. Possible values are AllowAnonymous and RedirectToLoginPage.

    enabled boolean

    Is Authentication enabled?

    activeDirectory FunctionAppAuthSettingsActiveDirectory

    A active_directory block as defined below.

    additionalLoginParams {[key: string]: string}

    Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value".

    allowedExternalRedirectUrls string[]

    External URLs that can be redirected to as part of logging in or logging out of the app.

    defaultProvider string

    The default provider to use when multiple providers have been set up. Possible values are AzureActiveDirectory, Facebook, Google, MicrosoftAccount and Twitter.

    NOTE: When using multiple providers, the default provider must be set for settings like unauthenticated_client_action to work.

    facebook FunctionAppAuthSettingsFacebook

    A facebook block as defined below.

    google FunctionAppAuthSettingsGoogle

    A google block as defined below.

    issuer string

    Issuer URI. When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/.

    microsoft FunctionAppAuthSettingsMicrosoft

    A microsoft block as defined below.

    runtimeVersion string

    The runtime version of the Authentication/Authorization module.

    tokenRefreshExtensionHours number

    The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72.

    tokenStoreEnabled boolean

    If enabled the module will durably store platform-specific security tokens that are obtained during login flows. Defaults to false.

    twitter FunctionAppAuthSettingsTwitter

    A twitter block as defined below.

    unauthenticatedClientAction string

    The action to take when an unauthenticated client attempts to access the app. Possible values are AllowAnonymous and RedirectToLoginPage.

    enabled bool

    Is Authentication enabled?

    active_directory FunctionAppAuthSettingsActiveDirectory

    A active_directory block as defined below.

    additional_login_params Mapping[str, str]

    Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value".

    allowed_external_redirect_urls Sequence[str]

    External URLs that can be redirected to as part of logging in or logging out of the app.

    default_provider str

    The default provider to use when multiple providers have been set up. Possible values are AzureActiveDirectory, Facebook, Google, MicrosoftAccount and Twitter.

    NOTE: When using multiple providers, the default provider must be set for settings like unauthenticated_client_action to work.

    facebook FunctionAppAuthSettingsFacebook

    A facebook block as defined below.

    google FunctionAppAuthSettingsGoogle

    A google block as defined below.

    issuer str

    Issuer URI. When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/.

    microsoft FunctionAppAuthSettingsMicrosoft

    A microsoft block as defined below.

    runtime_version str

    The runtime version of the Authentication/Authorization module.

    token_refresh_extension_hours float

    The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72.

    token_store_enabled bool

    If enabled the module will durably store platform-specific security tokens that are obtained during login flows. Defaults to false.

    twitter FunctionAppAuthSettingsTwitter

    A twitter block as defined below.

    unauthenticated_client_action str

    The action to take when an unauthenticated client attempts to access the app. Possible values are AllowAnonymous and RedirectToLoginPage.

    enabled Boolean

    Is Authentication enabled?

    activeDirectory Property Map

    A active_directory block as defined below.

    additionalLoginParams Map<String>

    Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value".

    allowedExternalRedirectUrls List<String>

    External URLs that can be redirected to as part of logging in or logging out of the app.

    defaultProvider String

    The default provider to use when multiple providers have been set up. Possible values are AzureActiveDirectory, Facebook, Google, MicrosoftAccount and Twitter.

    NOTE: When using multiple providers, the default provider must be set for settings like unauthenticated_client_action to work.

    facebook Property Map

    A facebook block as defined below.

    google Property Map

    A google block as defined below.

    issuer String

    Issuer URI. When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/.

    microsoft Property Map

    A microsoft block as defined below.

    runtimeVersion String

    The runtime version of the Authentication/Authorization module.

    tokenRefreshExtensionHours Number

    The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72.

    tokenStoreEnabled Boolean

    If enabled the module will durably store platform-specific security tokens that are obtained during login flows. Defaults to false.

    twitter Property Map

    A twitter block as defined below.

    unauthenticatedClientAction String

    The action to take when an unauthenticated client attempts to access the app. Possible values are AllowAnonymous and RedirectToLoginPage.

    FunctionAppAuthSettingsActiveDirectory, FunctionAppAuthSettingsActiveDirectoryArgs

    ClientId string

    The Client ID of this relying party application. Enables OpenIDConnection authentication with Azure Active Directory.

    AllowedAudiences List<string>

    Allowed audience values to consider when validating JWTs issued by Azure Active Directory.

    ClientSecret string

    The Client Secret of this relying party application. If no secret is provided, implicit flow will be used.

    ClientId string

    The Client ID of this relying party application. Enables OpenIDConnection authentication with Azure Active Directory.

    AllowedAudiences []string

    Allowed audience values to consider when validating JWTs issued by Azure Active Directory.

    ClientSecret string

    The Client Secret of this relying party application. If no secret is provided, implicit flow will be used.

    clientId String

    The Client ID of this relying party application. Enables OpenIDConnection authentication with Azure Active Directory.

    allowedAudiences List<String>

    Allowed audience values to consider when validating JWTs issued by Azure Active Directory.

    clientSecret String

    The Client Secret of this relying party application. If no secret is provided, implicit flow will be used.

    clientId string

    The Client ID of this relying party application. Enables OpenIDConnection authentication with Azure Active Directory.

    allowedAudiences string[]

    Allowed audience values to consider when validating JWTs issued by Azure Active Directory.

    clientSecret string

    The Client Secret of this relying party application. If no secret is provided, implicit flow will be used.

    client_id str

    The Client ID of this relying party application. Enables OpenIDConnection authentication with Azure Active Directory.

    allowed_audiences Sequence[str]

    Allowed audience values to consider when validating JWTs issued by Azure Active Directory.

    client_secret str

    The Client Secret of this relying party application. If no secret is provided, implicit flow will be used.

    clientId String

    The Client ID of this relying party application. Enables OpenIDConnection authentication with Azure Active Directory.

    allowedAudiences List<String>

    Allowed audience values to consider when validating JWTs issued by Azure Active Directory.

    clientSecret String

    The Client Secret of this relying party application. If no secret is provided, implicit flow will be used.

    FunctionAppAuthSettingsFacebook, FunctionAppAuthSettingsFacebookArgs

    AppId string

    The App ID of the Facebook app used for login

    AppSecret string

    The App Secret of the Facebook app used for Facebook login.

    OauthScopes List<string>

    The OAuth 2.0 scopes that will be requested as part of Facebook login authentication. https://developers.facebook.com/docs/facebook-login

    AppId string

    The App ID of the Facebook app used for login

    AppSecret string

    The App Secret of the Facebook app used for Facebook login.

    OauthScopes []string

    The OAuth 2.0 scopes that will be requested as part of Facebook login authentication. https://developers.facebook.com/docs/facebook-login

    appId String

    The App ID of the Facebook app used for login

    appSecret String

    The App Secret of the Facebook app used for Facebook login.

    oauthScopes List<String>

    The OAuth 2.0 scopes that will be requested as part of Facebook login authentication. https://developers.facebook.com/docs/facebook-login

    appId string

    The App ID of the Facebook app used for login

    appSecret string

    The App Secret of the Facebook app used for Facebook login.

    oauthScopes string[]

    The OAuth 2.0 scopes that will be requested as part of Facebook login authentication. https://developers.facebook.com/docs/facebook-login

    app_id str

    The App ID of the Facebook app used for login

    app_secret str

    The App Secret of the Facebook app used for Facebook login.

    oauth_scopes Sequence[str]

    The OAuth 2.0 scopes that will be requested as part of Facebook login authentication. https://developers.facebook.com/docs/facebook-login

    appId String

    The App ID of the Facebook app used for login

    appSecret String

    The App Secret of the Facebook app used for Facebook login.

    oauthScopes List<String>

    The OAuth 2.0 scopes that will be requested as part of Facebook login authentication. https://developers.facebook.com/docs/facebook-login

    FunctionAppAuthSettingsGoogle, FunctionAppAuthSettingsGoogleArgs

    ClientId string

    The OpenID Connect Client ID for the Google web application.

    ClientSecret string

    The client secret associated with the Google web application.

    OauthScopes List<string>

    The OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. https://developers.google.com/identity/sign-in/web/

    ClientId string

    The OpenID Connect Client ID for the Google web application.

    ClientSecret string

    The client secret associated with the Google web application.

    OauthScopes []string

    The OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. https://developers.google.com/identity/sign-in/web/

    clientId String

    The OpenID Connect Client ID for the Google web application.

    clientSecret String

    The client secret associated with the Google web application.

    oauthScopes List<String>

    The OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. https://developers.google.com/identity/sign-in/web/

    clientId string

    The OpenID Connect Client ID for the Google web application.

    clientSecret string

    The client secret associated with the Google web application.

    oauthScopes string[]

    The OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. https://developers.google.com/identity/sign-in/web/

    client_id str

    The OpenID Connect Client ID for the Google web application.

    client_secret str

    The client secret associated with the Google web application.

    oauth_scopes Sequence[str]

    The OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. https://developers.google.com/identity/sign-in/web/

    clientId String

    The OpenID Connect Client ID for the Google web application.

    clientSecret String

    The client secret associated with the Google web application.

    oauthScopes List<String>

    The OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. https://developers.google.com/identity/sign-in/web/

    FunctionAppAuthSettingsMicrosoft, FunctionAppAuthSettingsMicrosoftArgs

    ClientId string

    The OAuth 2.0 client ID that was created for the app used for authentication.

    ClientSecret string

    The OAuth 2.0 client secret that was created for the app used for authentication.

    OauthScopes List<string>

    The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx

    ClientId string

    The OAuth 2.0 client ID that was created for the app used for authentication.

    ClientSecret string

    The OAuth 2.0 client secret that was created for the app used for authentication.

    OauthScopes []string

    The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx

    clientId String

    The OAuth 2.0 client ID that was created for the app used for authentication.

    clientSecret String

    The OAuth 2.0 client secret that was created for the app used for authentication.

    oauthScopes List<String>

    The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx

    clientId string

    The OAuth 2.0 client ID that was created for the app used for authentication.

    clientSecret string

    The OAuth 2.0 client secret that was created for the app used for authentication.

    oauthScopes string[]

    The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx

    client_id str

    The OAuth 2.0 client ID that was created for the app used for authentication.

    client_secret str

    The OAuth 2.0 client secret that was created for the app used for authentication.

    oauth_scopes Sequence[str]

    The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx

    clientId String

    The OAuth 2.0 client ID that was created for the app used for authentication.

    clientSecret String

    The OAuth 2.0 client secret that was created for the app used for authentication.

    oauthScopes List<String>

    The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx

    FunctionAppAuthSettingsTwitter, FunctionAppAuthSettingsTwitterArgs

    ConsumerKey string

    The OAuth 1.0a consumer key of the Twitter application used for sign-in.

    ConsumerSecret string

    The OAuth 1.0a consumer secret of the Twitter application used for sign-in.

    ConsumerKey string

    The OAuth 1.0a consumer key of the Twitter application used for sign-in.

    ConsumerSecret string

    The OAuth 1.0a consumer secret of the Twitter application used for sign-in.

    consumerKey String

    The OAuth 1.0a consumer key of the Twitter application used for sign-in.

    consumerSecret String

    The OAuth 1.0a consumer secret of the Twitter application used for sign-in.

    consumerKey string

    The OAuth 1.0a consumer key of the Twitter application used for sign-in.

    consumerSecret string

    The OAuth 1.0a consumer secret of the Twitter application used for sign-in.

    consumer_key str

    The OAuth 1.0a consumer key of the Twitter application used for sign-in.

    consumer_secret str

    The OAuth 1.0a consumer secret of the Twitter application used for sign-in.

    consumerKey String

    The OAuth 1.0a consumer key of the Twitter application used for sign-in.

    consumerSecret String

    The OAuth 1.0a consumer secret of the Twitter application used for sign-in.

    FunctionAppConnectionString, FunctionAppConnectionStringArgs

    Name string

    The name of the Connection String.

    Type string

    The type of the Connection String. Possible values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer.

    Value string

    The value for the Connection String.

    Name string

    The name of the Connection String.

    Type string

    The type of the Connection String. Possible values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer.

    Value string

    The value for the Connection String.

    name String

    The name of the Connection String.

    type String

    The type of the Connection String. Possible values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer.

    value String

    The value for the Connection String.

    name string

    The name of the Connection String.

    type string

    The type of the Connection String. Possible values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer.

    value string

    The value for the Connection String.

    name str

    The name of the Connection String.

    type str

    The type of the Connection String. Possible values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer.

    value str

    The value for the Connection String.

    name String

    The name of the Connection String.

    type String

    The type of the Connection String. Possible values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer.

    value String

    The value for the Connection String.

    FunctionAppIdentity, FunctionAppIdentityArgs

    Type string

    Specifies the identity type of the Function App. Possible values are SystemAssigned (where Azure will generate a Service Principal for you), UserAssigned where you can specify the Service Principal IDs in the identity_ids field, and SystemAssigned, UserAssigned which assigns both a system managed identity as well as the specified user assigned identities.

    NOTE: When type is set to SystemAssigned, The assigned principal_id and tenant_id can be retrieved after the Function App has been created. More details are available below.

    IdentityIds List<string>

    Specifies a list of user managed identity ids to be assigned. Required if type is UserAssigned.

    PrincipalId string

    The Principal ID for the Service Principal associated with the Managed Service Identity of this App Service.

    TenantId string

    The Tenant ID for the Service Principal associated with the Managed Service Identity of this App Service.

    Type string

    Specifies the identity type of the Function App. Possible values are SystemAssigned (where Azure will generate a Service Principal for you), UserAssigned where you can specify the Service Principal IDs in the identity_ids field, and SystemAssigned, UserAssigned which assigns both a system managed identity as well as the specified user assigned identities.

    NOTE: When type is set to SystemAssigned, The assigned principal_id and tenant_id can be retrieved after the Function App has been created. More details are available below.

    IdentityIds []string

    Specifies a list of user managed identity ids to be assigned. Required if type is UserAssigned.

    PrincipalId string

    The Principal ID for the Service Principal associated with the Managed Service Identity of this App Service.

    TenantId string

    The Tenant ID for the Service Principal associated with the Managed Service Identity of this App Service.

    type String

    Specifies the identity type of the Function App. Possible values are SystemAssigned (where Azure will generate a Service Principal for you), UserAssigned where you can specify the Service Principal IDs in the identity_ids field, and SystemAssigned, UserAssigned which assigns both a system managed identity as well as the specified user assigned identities.

    NOTE: When type is set to SystemAssigned, The assigned principal_id and tenant_id can be retrieved after the Function App has been created. More details are available below.

    identityIds List<String>

    Specifies a list of user managed identity ids to be assigned. Required if type is UserAssigned.

    principalId String

    The Principal ID for the Service Principal associated with the Managed Service Identity of this App Service.

    tenantId String

    The Tenant ID for the Service Principal associated with the Managed Service Identity of this App Service.

    type string

    Specifies the identity type of the Function App. Possible values are SystemAssigned (where Azure will generate a Service Principal for you), UserAssigned where you can specify the Service Principal IDs in the identity_ids field, and SystemAssigned, UserAssigned which assigns both a system managed identity as well as the specified user assigned identities.

    NOTE: When type is set to SystemAssigned, The assigned principal_id and tenant_id can be retrieved after the Function App has been created. More details are available below.

    identityIds string[]

    Specifies a list of user managed identity ids to be assigned. Required if type is UserAssigned.

    principalId string

    The Principal ID for the Service Principal associated with the Managed Service Identity of this App Service.

    tenantId string

    The Tenant ID for the Service Principal associated with the Managed Service Identity of this App Service.

    type str

    Specifies the identity type of the Function App. Possible values are SystemAssigned (where Azure will generate a Service Principal for you), UserAssigned where you can specify the Service Principal IDs in the identity_ids field, and SystemAssigned, UserAssigned which assigns both a system managed identity as well as the specified user assigned identities.

    NOTE: When type is set to SystemAssigned, The assigned principal_id and tenant_id can be retrieved after the Function App has been created. More details are available below.

    identity_ids Sequence[str]

    Specifies a list of user managed identity ids to be assigned. Required if type is UserAssigned.

    principal_id str

    The Principal ID for the Service Principal associated with the Managed Service Identity of this App Service.

    tenant_id str

    The Tenant ID for the Service Principal associated with the Managed Service Identity of this App Service.

    type String

    Specifies the identity type of the Function App. Possible values are SystemAssigned (where Azure will generate a Service Principal for you), UserAssigned where you can specify the Service Principal IDs in the identity_ids field, and SystemAssigned, UserAssigned which assigns both a system managed identity as well as the specified user assigned identities.

    NOTE: When type is set to SystemAssigned, The assigned principal_id and tenant_id can be retrieved after the Function App has been created. More details are available below.

    identityIds List<String>

    Specifies a list of user managed identity ids to be assigned. Required if type is UserAssigned.

    principalId String

    The Principal ID for the Service Principal associated with the Managed Service Identity of this App Service.

    tenantId String

    The Tenant ID for the Service Principal associated with the Managed Service Identity of this App Service.

    FunctionAppSiteConfig, FunctionAppSiteConfigArgs

    AlwaysOn bool

    Should the Function App be loaded at all times? Defaults to false.

    AppScaleLimit int

    The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan.

    AutoSwapSlotName string

    The name of the slot to automatically swap to during deployment

    NOTE: This attribute is only used for slots.

    Cors FunctionAppSiteConfigCors

    A cors block as defined below.

    DotnetFrameworkVersion string

    The version of the .NET framework's CLR used in this function app. Possible values are v4.0 (including .NET Core 2.1 and 3.1), v5.0 and v6.0. For more information on which .NET Framework version to use based on the runtime version you're targeting - please see this table. Defaults to v4.0.

    ElasticInstanceMinimum int

    The number of minimum instances for this function app. Only affects apps on the Premium plan.

    FtpsState string

    State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to AllAllowed.

    HealthCheckPath string

    Path which will be checked for this function app health.

    Http2Enabled bool

    Specifies whether or not the HTTP2 protocol should be enabled. Defaults to false.

    IpRestrictions List<FunctionAppSiteConfigIpRestriction>

    A List of objects representing IP restrictions as defined below.

    NOTE User has to explicitly set ip_restriction to empty slice ([]) to remove it.

    JavaVersion string

    Java version hosted by the function app in Azure. Possible values are 1.8, 11 & 17 (In-Preview).

    LinuxFxVersion string

    Linux App Framework and version for the AppService, e.g. DOCKER|(golang:latest).

    MinTlsVersion string

    The minimum supported TLS version for the function app. Possible values are 1.0, 1.1, and 1.2. Defaults to 1.2 for new function apps.

    PreWarmedInstanceCount int

    The number of pre-warmed instances for this function app. Only affects apps on the Premium plan.

    RuntimeScaleMonitoringEnabled bool

    Should Runtime Scale Monitoring be enabled?. Only applicable to apps on the Premium plan. Defaults to false.

    ScmIpRestrictions List<FunctionAppSiteConfigScmIpRestriction>

    A List of objects representing IP restrictions as defined below.

    NOTE User has to explicitly set scm_ip_restriction to empty slice ([]) to remove it.

    ScmType string

    The type of Source Control used by the Function App. Valid values include: BitBucketGit, BitBucketHg, CodePlexGit, CodePlexHg, Dropbox, ExternalGit, ExternalHg, GitHub, LocalGit, None (default), OneDrive, Tfs, VSO, and VSTSRM.

    NOTE: This setting is incompatible with the source_control block which updates this value based on the setting provided.

    ScmUseMainIpRestriction bool

    IP security restrictions for scm to use main. Defaults to false.

    NOTE Any scm_ip_restriction blocks configured are ignored by the service when scm_use_main_ip_restriction is set to true. Any scm restrictions will become active if this is subsequently set to false or removed.

    Use32BitWorkerProcess bool

    Should the Function App run in 32 bit mode, rather than 64 bit mode? Defaults to true.

    Note: when using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    VnetRouteAllEnabled bool
    WebsocketsEnabled bool

    Should WebSockets be enabled?

    AlwaysOn bool

    Should the Function App be loaded at all times? Defaults to false.

    AppScaleLimit int

    The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan.

    AutoSwapSlotName string

    The name of the slot to automatically swap to during deployment

    NOTE: This attribute is only used for slots.

    Cors FunctionAppSiteConfigCors

    A cors block as defined below.

    DotnetFrameworkVersion string

    The version of the .NET framework's CLR used in this function app. Possible values are v4.0 (including .NET Core 2.1 and 3.1), v5.0 and v6.0. For more information on which .NET Framework version to use based on the runtime version you're targeting - please see this table. Defaults to v4.0.

    ElasticInstanceMinimum int

    The number of minimum instances for this function app. Only affects apps on the Premium plan.

    FtpsState string

    State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to AllAllowed.

    HealthCheckPath string

    Path which will be checked for this function app health.

    Http2Enabled bool

    Specifies whether or not the HTTP2 protocol should be enabled. Defaults to false.

    IpRestrictions []FunctionAppSiteConfigIpRestriction

    A List of objects representing IP restrictions as defined below.

    NOTE User has to explicitly set ip_restriction to empty slice ([]) to remove it.

    JavaVersion string

    Java version hosted by the function app in Azure. Possible values are 1.8, 11 & 17 (In-Preview).

    LinuxFxVersion string

    Linux App Framework and version for the AppService, e.g. DOCKER|(golang:latest).

    MinTlsVersion string

    The minimum supported TLS version for the function app. Possible values are 1.0, 1.1, and 1.2. Defaults to 1.2 for new function apps.

    PreWarmedInstanceCount int

    The number of pre-warmed instances for this function app. Only affects apps on the Premium plan.

    RuntimeScaleMonitoringEnabled bool

    Should Runtime Scale Monitoring be enabled?. Only applicable to apps on the Premium plan. Defaults to false.

    ScmIpRestrictions []FunctionAppSiteConfigScmIpRestriction

    A List of objects representing IP restrictions as defined below.

    NOTE User has to explicitly set scm_ip_restriction to empty slice ([]) to remove it.

    ScmType string

    The type of Source Control used by the Function App. Valid values include: BitBucketGit, BitBucketHg, CodePlexGit, CodePlexHg, Dropbox, ExternalGit, ExternalHg, GitHub, LocalGit, None (default), OneDrive, Tfs, VSO, and VSTSRM.

    NOTE: This setting is incompatible with the source_control block which updates this value based on the setting provided.

    ScmUseMainIpRestriction bool

    IP security restrictions for scm to use main. Defaults to false.

    NOTE Any scm_ip_restriction blocks configured are ignored by the service when scm_use_main_ip_restriction is set to true. Any scm restrictions will become active if this is subsequently set to false or removed.

    Use32BitWorkerProcess bool

    Should the Function App run in 32 bit mode, rather than 64 bit mode? Defaults to true.

    Note: when using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    VnetRouteAllEnabled bool
    WebsocketsEnabled bool

    Should WebSockets be enabled?

    alwaysOn Boolean

    Should the Function App be loaded at all times? Defaults to false.

    appScaleLimit Integer

    The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan.

    autoSwapSlotName String

    The name of the slot to automatically swap to during deployment

    NOTE: This attribute is only used for slots.

    cors FunctionAppSiteConfigCors

    A cors block as defined below.

    dotnetFrameworkVersion String

    The version of the .NET framework's CLR used in this function app. Possible values are v4.0 (including .NET Core 2.1 and 3.1), v5.0 and v6.0. For more information on which .NET Framework version to use based on the runtime version you're targeting - please see this table. Defaults to v4.0.

    elasticInstanceMinimum Integer

    The number of minimum instances for this function app. Only affects apps on the Premium plan.

    ftpsState String

    State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to AllAllowed.

    healthCheckPath String

    Path which will be checked for this function app health.

    http2Enabled Boolean

    Specifies whether or not the HTTP2 protocol should be enabled. Defaults to false.

    ipRestrictions List<FunctionAppSiteConfigIpRestriction>

    A List of objects representing IP restrictions as defined below.

    NOTE User has to explicitly set ip_restriction to empty slice ([]) to remove it.

    javaVersion String

    Java version hosted by the function app in Azure. Possible values are 1.8, 11 & 17 (In-Preview).

    linuxFxVersion String

    Linux App Framework and version for the AppService, e.g. DOCKER|(golang:latest).

    minTlsVersion String

    The minimum supported TLS version for the function app. Possible values are 1.0, 1.1, and 1.2. Defaults to 1.2 for new function apps.

    preWarmedInstanceCount Integer

    The number of pre-warmed instances for this function app. Only affects apps on the Premium plan.

    runtimeScaleMonitoringEnabled Boolean

    Should Runtime Scale Monitoring be enabled?. Only applicable to apps on the Premium plan. Defaults to false.

    scmIpRestrictions List<FunctionAppSiteConfigScmIpRestriction>

    A List of objects representing IP restrictions as defined below.

    NOTE User has to explicitly set scm_ip_restriction to empty slice ([]) to remove it.

    scmType String

    The type of Source Control used by the Function App. Valid values include: BitBucketGit, BitBucketHg, CodePlexGit, CodePlexHg, Dropbox, ExternalGit, ExternalHg, GitHub, LocalGit, None (default), OneDrive, Tfs, VSO, and VSTSRM.

    NOTE: This setting is incompatible with the source_control block which updates this value based on the setting provided.

    scmUseMainIpRestriction Boolean

    IP security restrictions for scm to use main. Defaults to false.

    NOTE Any scm_ip_restriction blocks configured are ignored by the service when scm_use_main_ip_restriction is set to true. Any scm restrictions will become active if this is subsequently set to false or removed.

    use32BitWorkerProcess Boolean

    Should the Function App run in 32 bit mode, rather than 64 bit mode? Defaults to true.

    Note: when using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    vnetRouteAllEnabled Boolean
    websocketsEnabled Boolean

    Should WebSockets be enabled?

    alwaysOn boolean

    Should the Function App be loaded at all times? Defaults to false.

    appScaleLimit number

    The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan.

    autoSwapSlotName string

    The name of the slot to automatically swap to during deployment

    NOTE: This attribute is only used for slots.

    cors FunctionAppSiteConfigCors

    A cors block as defined below.

    dotnetFrameworkVersion string

    The version of the .NET framework's CLR used in this function app. Possible values are v4.0 (including .NET Core 2.1 and 3.1), v5.0 and v6.0. For more information on which .NET Framework version to use based on the runtime version you're targeting - please see this table. Defaults to v4.0.

    elasticInstanceMinimum number

    The number of minimum instances for this function app. Only affects apps on the Premium plan.

    ftpsState string

    State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to AllAllowed.

    healthCheckPath string

    Path which will be checked for this function app health.

    http2Enabled boolean

    Specifies whether or not the HTTP2 protocol should be enabled. Defaults to false.

    ipRestrictions FunctionAppSiteConfigIpRestriction[]

    A List of objects representing IP restrictions as defined below.

    NOTE User has to explicitly set ip_restriction to empty slice ([]) to remove it.

    javaVersion string

    Java version hosted by the function app in Azure. Possible values are 1.8, 11 & 17 (In-Preview).

    linuxFxVersion string

    Linux App Framework and version for the AppService, e.g. DOCKER|(golang:latest).

    minTlsVersion string

    The minimum supported TLS version for the function app. Possible values are 1.0, 1.1, and 1.2. Defaults to 1.2 for new function apps.

    preWarmedInstanceCount number

    The number of pre-warmed instances for this function app. Only affects apps on the Premium plan.

    runtimeScaleMonitoringEnabled boolean

    Should Runtime Scale Monitoring be enabled?. Only applicable to apps on the Premium plan. Defaults to false.

    scmIpRestrictions FunctionAppSiteConfigScmIpRestriction[]

    A List of objects representing IP restrictions as defined below.

    NOTE User has to explicitly set scm_ip_restriction to empty slice ([]) to remove it.

    scmType string

    The type of Source Control used by the Function App. Valid values include: BitBucketGit, BitBucketHg, CodePlexGit, CodePlexHg, Dropbox, ExternalGit, ExternalHg, GitHub, LocalGit, None (default), OneDrive, Tfs, VSO, and VSTSRM.

    NOTE: This setting is incompatible with the source_control block which updates this value based on the setting provided.

    scmUseMainIpRestriction boolean

    IP security restrictions for scm to use main. Defaults to false.

    NOTE Any scm_ip_restriction blocks configured are ignored by the service when scm_use_main_ip_restriction is set to true. Any scm restrictions will become active if this is subsequently set to false or removed.

    use32BitWorkerProcess boolean

    Should the Function App run in 32 bit mode, rather than 64 bit mode? Defaults to true.

    Note: when using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    vnetRouteAllEnabled boolean
    websocketsEnabled boolean

    Should WebSockets be enabled?

    always_on bool

    Should the Function App be loaded at all times? Defaults to false.

    app_scale_limit int

    The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan.

    auto_swap_slot_name str

    The name of the slot to automatically swap to during deployment

    NOTE: This attribute is only used for slots.

    cors FunctionAppSiteConfigCors

    A cors block as defined below.

    dotnet_framework_version str

    The version of the .NET framework's CLR used in this function app. Possible values are v4.0 (including .NET Core 2.1 and 3.1), v5.0 and v6.0. For more information on which .NET Framework version to use based on the runtime version you're targeting - please see this table. Defaults to v4.0.

    elastic_instance_minimum int

    The number of minimum instances for this function app. Only affects apps on the Premium plan.

    ftps_state str

    State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to AllAllowed.

    health_check_path str

    Path which will be checked for this function app health.

    http2_enabled bool

    Specifies whether or not the HTTP2 protocol should be enabled. Defaults to false.

    ip_restrictions Sequence[FunctionAppSiteConfigIpRestriction]

    A List of objects representing IP restrictions as defined below.

    NOTE User has to explicitly set ip_restriction to empty slice ([]) to remove it.

    java_version str

    Java version hosted by the function app in Azure. Possible values are 1.8, 11 & 17 (In-Preview).

    linux_fx_version str

    Linux App Framework and version for the AppService, e.g. DOCKER|(golang:latest).

    min_tls_version str

    The minimum supported TLS version for the function app. Possible values are 1.0, 1.1, and 1.2. Defaults to 1.2 for new function apps.

    pre_warmed_instance_count int

    The number of pre-warmed instances for this function app. Only affects apps on the Premium plan.

    runtime_scale_monitoring_enabled bool

    Should Runtime Scale Monitoring be enabled?. Only applicable to apps on the Premium plan. Defaults to false.

    scm_ip_restrictions Sequence[FunctionAppSiteConfigScmIpRestriction]

    A List of objects representing IP restrictions as defined below.

    NOTE User has to explicitly set scm_ip_restriction to empty slice ([]) to remove it.

    scm_type str

    The type of Source Control used by the Function App. Valid values include: BitBucketGit, BitBucketHg, CodePlexGit, CodePlexHg, Dropbox, ExternalGit, ExternalHg, GitHub, LocalGit, None (default), OneDrive, Tfs, VSO, and VSTSRM.

    NOTE: This setting is incompatible with the source_control block which updates this value based on the setting provided.

    scm_use_main_ip_restriction bool

    IP security restrictions for scm to use main. Defaults to false.

    NOTE Any scm_ip_restriction blocks configured are ignored by the service when scm_use_main_ip_restriction is set to true. Any scm restrictions will become active if this is subsequently set to false or removed.

    use32_bit_worker_process bool

    Should the Function App run in 32 bit mode, rather than 64 bit mode? Defaults to true.

    Note: when using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    vnet_route_all_enabled bool
    websockets_enabled bool

    Should WebSockets be enabled?

    alwaysOn Boolean

    Should the Function App be loaded at all times? Defaults to false.

    appScaleLimit Number

    The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan.

    autoSwapSlotName String

    The name of the slot to automatically swap to during deployment

    NOTE: This attribute is only used for slots.

    cors Property Map

    A cors block as defined below.

    dotnetFrameworkVersion String

    The version of the .NET framework's CLR used in this function app. Possible values are v4.0 (including .NET Core 2.1 and 3.1), v5.0 and v6.0. For more information on which .NET Framework version to use based on the runtime version you're targeting - please see this table. Defaults to v4.0.

    elasticInstanceMinimum Number

    The number of minimum instances for this function app. Only affects apps on the Premium plan.

    ftpsState String

    State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to AllAllowed.

    healthCheckPath String

    Path which will be checked for this function app health.

    http2Enabled Boolean

    Specifies whether or not the HTTP2 protocol should be enabled. Defaults to false.

    ipRestrictions List<Property Map>

    A List of objects representing IP restrictions as defined below.

    NOTE User has to explicitly set ip_restriction to empty slice ([]) to remove it.

    javaVersion String

    Java version hosted by the function app in Azure. Possible values are 1.8, 11 & 17 (In-Preview).

    linuxFxVersion String

    Linux App Framework and version for the AppService, e.g. DOCKER|(golang:latest).

    minTlsVersion String

    The minimum supported TLS version for the function app. Possible values are 1.0, 1.1, and 1.2. Defaults to 1.2 for new function apps.

    preWarmedInstanceCount Number

    The number of pre-warmed instances for this function app. Only affects apps on the Premium plan.

    runtimeScaleMonitoringEnabled Boolean

    Should Runtime Scale Monitoring be enabled?. Only applicable to apps on the Premium plan. Defaults to false.

    scmIpRestrictions List<Property Map>

    A List of objects representing IP restrictions as defined below.

    NOTE User has to explicitly set scm_ip_restriction to empty slice ([]) to remove it.

    scmType String

    The type of Source Control used by the Function App. Valid values include: BitBucketGit, BitBucketHg, CodePlexGit, CodePlexHg, Dropbox, ExternalGit, ExternalHg, GitHub, LocalGit, None (default), OneDrive, Tfs, VSO, and VSTSRM.

    NOTE: This setting is incompatible with the source_control block which updates this value based on the setting provided.

    scmUseMainIpRestriction Boolean

    IP security restrictions for scm to use main. Defaults to false.

    NOTE Any scm_ip_restriction blocks configured are ignored by the service when scm_use_main_ip_restriction is set to true. Any scm restrictions will become active if this is subsequently set to false or removed.

    use32BitWorkerProcess Boolean

    Should the Function App run in 32 bit mode, rather than 64 bit mode? Defaults to true.

    Note: when using an App Service Plan in the Free or Shared Tiers use_32_bit_worker_process must be set to true.

    vnetRouteAllEnabled Boolean
    websocketsEnabled Boolean

    Should WebSockets be enabled?

    FunctionAppSiteConfigCors, FunctionAppSiteConfigCorsArgs

    AllowedOrigins List<string>

    A list of origins which should be able to make cross-origin calls. * can be used to allow all calls.

    SupportCredentials bool

    Are credentials supported?

    AllowedOrigins []string

    A list of origins which should be able to make cross-origin calls. * can be used to allow all calls.

    SupportCredentials bool

    Are credentials supported?

    allowedOrigins List<String>

    A list of origins which should be able to make cross-origin calls. * can be used to allow all calls.

    supportCredentials Boolean

    Are credentials supported?

    allowedOrigins string[]

    A list of origins which should be able to make cross-origin calls. * can be used to allow all calls.

    supportCredentials boolean

    Are credentials supported?

    allowed_origins Sequence[str]

    A list of origins which should be able to make cross-origin calls. * can be used to allow all calls.

    support_credentials bool

    Are credentials supported?

    allowedOrigins List<String>

    A list of origins which should be able to make cross-origin calls. * can be used to allow all calls.

    supportCredentials Boolean

    Are credentials supported?

    FunctionAppSiteConfigIpRestriction, FunctionAppSiteConfigIpRestrictionArgs

    Action string

    Does this restriction Allow or Deny access for this IP range. Defaults to Allow.

    Headers FunctionAppSiteConfigIpRestrictionHeaders

    The headers for this specific ip_restriction as defined below.

    IpAddress string

    The IP Address used for this IP Restriction in CIDR notation.

    Name string

    The name for this IP Restriction.

    Priority int

    The priority for this IP Restriction. Restrictions are enforced in priority order. By default, the priority is set to 65000 if not specified.

    ServiceTag string

    The Service Tag used for this IP Restriction.

    VirtualNetworkSubnetId string

    The Virtual Network Subnet ID used for this IP Restriction.

    NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified

    Action string

    Does this restriction Allow or Deny access for this IP range. Defaults to Allow.

    Headers FunctionAppSiteConfigIpRestrictionHeaders

    The headers for this specific ip_restriction as defined below.

    IpAddress string

    The IP Address used for this IP Restriction in CIDR notation.

    Name string

    The name for this IP Restriction.

    Priority int

    The priority for this IP Restriction. Restrictions are enforced in priority order. By default, the priority is set to 65000 if not specified.

    ServiceTag string

    The Service Tag used for this IP Restriction.

    VirtualNetworkSubnetId string

    The Virtual Network Subnet ID used for this IP Restriction.

    NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified

    action String

    Does this restriction Allow or Deny access for this IP range. Defaults to Allow.

    headers FunctionAppSiteConfigIpRestrictionHeaders

    The headers for this specific ip_restriction as defined below.

    ipAddress String

    The IP Address used for this IP Restriction in CIDR notation.

    name String

    The name for this IP Restriction.

    priority Integer

    The priority for this IP Restriction. Restrictions are enforced in priority order. By default, the priority is set to 65000 if not specified.

    serviceTag String

    The Service Tag used for this IP Restriction.

    virtualNetworkSubnetId String

    The Virtual Network Subnet ID used for this IP Restriction.

    NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified

    action string

    Does this restriction Allow or Deny access for this IP range. Defaults to Allow.

    headers FunctionAppSiteConfigIpRestrictionHeaders

    The headers for this specific ip_restriction as defined below.

    ipAddress string

    The IP Address used for this IP Restriction in CIDR notation.

    name string

    The name for this IP Restriction.

    priority number

    The priority for this IP Restriction. Restrictions are enforced in priority order. By default, the priority is set to 65000 if not specified.

    serviceTag string

    The Service Tag used for this IP Restriction.

    virtualNetworkSubnetId string

    The Virtual Network Subnet ID used for this IP Restriction.

    NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified

    action str

    Does this restriction Allow or Deny access for this IP range. Defaults to Allow.

    headers FunctionAppSiteConfigIpRestrictionHeaders

    The headers for this specific ip_restriction as defined below.

    ip_address str

    The IP Address used for this IP Restriction in CIDR notation.

    name str

    The name for this IP Restriction.

    priority int

    The priority for this IP Restriction. Restrictions are enforced in priority order. By default, the priority is set to 65000 if not specified.

    service_tag str

    The Service Tag used for this IP Restriction.

    virtual_network_subnet_id str

    The Virtual Network Subnet ID used for this IP Restriction.

    NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified

    action String

    Does this restriction Allow or Deny access for this IP range. Defaults to Allow.

    headers Property Map

    The headers for this specific ip_restriction as defined below.

    ipAddress String

    The IP Address used for this IP Restriction in CIDR notation.

    name String

    The name for this IP Restriction.

    priority Number

    The priority for this IP Restriction. Restrictions are enforced in priority order. By default, the priority is set to 65000 if not specified.

    serviceTag String

    The Service Tag used for this IP Restriction.

    virtualNetworkSubnetId String

    The Virtual Network Subnet ID used for this IP Restriction.

    NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified

    FunctionAppSiteConfigIpRestrictionHeaders, FunctionAppSiteConfigIpRestrictionHeadersArgs

    XAzureFdids List<string>

    A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.

    XFdHealthProbe string

    A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".

    XForwardedFors List<string>

    A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8

    XForwardedHosts List<string>

    A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.

    XAzureFdids []string

    A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.

    XFdHealthProbe string

    A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".

    XForwardedFors []string

    A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8

    XForwardedHosts []string

    A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.

    xAzureFdids List<String>

    A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.

    xFdHealthProbe String

    A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".

    xForwardedFors List<String>

    A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8

    xForwardedHosts List<String>

    A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.

    xAzureFdids string[]

    A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.

    xFdHealthProbe string

    A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".

    xForwardedFors string[]

    A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8

    xForwardedHosts string[]

    A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.

    x_azure_fdids Sequence[str]

    A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.

    x_fd_health_probe str

    A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".

    x_forwarded_fors Sequence[str]

    A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8

    x_forwarded_hosts Sequence[str]

    A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.

    xAzureFdids List<String>

    A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.

    xFdHealthProbe String

    A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".

    xForwardedFors List<String>

    A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8

    xForwardedHosts List<String>

    A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.

    FunctionAppSiteConfigScmIpRestriction, FunctionAppSiteConfigScmIpRestrictionArgs

    Action string

    Allow or Deny access for this IP range. Defaults to Allow.

    Headers FunctionAppSiteConfigScmIpRestrictionHeaders

    The headers for this specific scm_ip_restriction as defined below.

    IpAddress string

    The IP Address used for this IP Restriction in CIDR notation.

    Name string

    The name for this IP Restriction.

    Priority int

    The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified.

    ServiceTag string

    The Service Tag used for this IP Restriction.

    VirtualNetworkSubnetId string

    The Virtual Network Subnet ID used for this IP Restriction.

    NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified

    Action string

    Allow or Deny access for this IP range. Defaults to Allow.

    Headers FunctionAppSiteConfigScmIpRestrictionHeaders

    The headers for this specific scm_ip_restriction as defined below.

    IpAddress string

    The IP Address used for this IP Restriction in CIDR notation.

    Name string

    The name for this IP Restriction.

    Priority int

    The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified.

    ServiceTag string

    The Service Tag used for this IP Restriction.

    VirtualNetworkSubnetId string

    The Virtual Network Subnet ID used for this IP Restriction.

    NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified

    action String

    Allow or Deny access for this IP range. Defaults to Allow.

    headers FunctionAppSiteConfigScmIpRestrictionHeaders

    The headers for this specific scm_ip_restriction as defined below.

    ipAddress String

    The IP Address used for this IP Restriction in CIDR notation.

    name String

    The name for this IP Restriction.

    priority Integer

    The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified.

    serviceTag String

    The Service Tag used for this IP Restriction.

    virtualNetworkSubnetId String

    The Virtual Network Subnet ID used for this IP Restriction.

    NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified

    action string

    Allow or Deny access for this IP range. Defaults to Allow.

    headers FunctionAppSiteConfigScmIpRestrictionHeaders

    The headers for this specific scm_ip_restriction as defined below.

    ipAddress string

    The IP Address used for this IP Restriction in CIDR notation.

    name string

    The name for this IP Restriction.

    priority number

    The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified.

    serviceTag string

    The Service Tag used for this IP Restriction.

    virtualNetworkSubnetId string

    The Virtual Network Subnet ID used for this IP Restriction.

    NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified

    action str

    Allow or Deny access for this IP range. Defaults to Allow.

    headers FunctionAppSiteConfigScmIpRestrictionHeaders

    The headers for this specific scm_ip_restriction as defined below.

    ip_address str

    The IP Address used for this IP Restriction in CIDR notation.

    name str

    The name for this IP Restriction.

    priority int

    The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified.

    service_tag str

    The Service Tag used for this IP Restriction.

    virtual_network_subnet_id str

    The Virtual Network Subnet ID used for this IP Restriction.

    NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified

    action String

    Allow or Deny access for this IP range. Defaults to Allow.

    headers Property Map

    The headers for this specific scm_ip_restriction as defined below.

    ipAddress String

    The IP Address used for this IP Restriction in CIDR notation.

    name String

    The name for this IP Restriction.

    priority Number

    The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified.

    serviceTag String

    The Service Tag used for this IP Restriction.

    virtualNetworkSubnetId String

    The Virtual Network Subnet ID used for this IP Restriction.

    NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified

    FunctionAppSiteConfigScmIpRestrictionHeaders, FunctionAppSiteConfigScmIpRestrictionHeadersArgs

    XAzureFdids List<string>

    A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.

    XFdHealthProbe string

    A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".

    XForwardedFors List<string>

    A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8

    XForwardedHosts List<string>

    A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.

    XAzureFdids []string

    A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.

    XFdHealthProbe string

    A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".

    XForwardedFors []string

    A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8

    XForwardedHosts []string

    A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.

    xAzureFdids List<String>

    A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.

    xFdHealthProbe String

    A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".

    xForwardedFors List<String>

    A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8

    xForwardedHosts List<String>

    A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.

    xAzureFdids string[]

    A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.

    xFdHealthProbe string

    A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".

    xForwardedFors string[]

    A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8

    xForwardedHosts string[]

    A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.

    x_azure_fdids Sequence[str]

    A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.

    x_fd_health_probe str

    A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".

    x_forwarded_fors Sequence[str]

    A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8

    x_forwarded_hosts Sequence[str]

    A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.

    xAzureFdids List<String>

    A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.

    xFdHealthProbe String

    A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".

    xForwardedFors List<String>

    A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8

    xForwardedHosts List<String>

    A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.

    FunctionAppSiteCredential, FunctionAppSiteCredentialArgs

    Password string

    The password associated with the username, which can be used to publish to this App Service.

    Username string

    The username which can be used to publish to this App Service

    Password string

    The password associated with the username, which can be used to publish to this App Service.

    Username string

    The username which can be used to publish to this App Service

    password String

    The password associated with the username, which can be used to publish to this App Service.

    username String

    The username which can be used to publish to this App Service

    password string

    The password associated with the username, which can be used to publish to this App Service.

    username string

    The username which can be used to publish to this App Service

    password str

    The password associated with the username, which can be used to publish to this App Service.

    username str

    The username which can be used to publish to this App Service

    password String

    The password associated with the username, which can be used to publish to this App Service.

    username String

    The username which can be used to publish to this App Service

    FunctionAppSourceControl, FunctionAppSourceControlArgs

    Branch string

    The branch of the remote repository to use. Defaults to 'master'.

    ManualIntegration bool

    Limits to manual integration. Defaults to false if not specified.

    RepoUrl string

    The URL of the source code repository.

    RollbackEnabled bool

    Enable roll-back for the repository. Defaults to false if not specified.

    UseMercurial bool

    Use Mercurial if true, otherwise uses Git.

    Branch string

    The branch of the remote repository to use. Defaults to 'master'.

    ManualIntegration bool

    Limits to manual integration. Defaults to false if not specified.

    RepoUrl string

    The URL of the source code repository.

    RollbackEnabled bool

    Enable roll-back for the repository. Defaults to false if not specified.

    UseMercurial bool

    Use Mercurial if true, otherwise uses Git.

    branch String

    The branch of the remote repository to use. Defaults to 'master'.

    manualIntegration Boolean

    Limits to manual integration. Defaults to false if not specified.

    repoUrl String

    The URL of the source code repository.

    rollbackEnabled Boolean

    Enable roll-back for the repository. Defaults to false if not specified.

    useMercurial Boolean

    Use Mercurial if true, otherwise uses Git.

    branch string

    The branch of the remote repository to use. Defaults to 'master'.

    manualIntegration boolean

    Limits to manual integration. Defaults to false if not specified.

    repoUrl string

    The URL of the source code repository.

    rollbackEnabled boolean

    Enable roll-back for the repository. Defaults to false if not specified.

    useMercurial boolean

    Use Mercurial if true, otherwise uses Git.

    branch str

    The branch of the remote repository to use. Defaults to 'master'.

    manual_integration bool

    Limits to manual integration. Defaults to false if not specified.

    repo_url str

    The URL of the source code repository.

    rollback_enabled bool

    Enable roll-back for the repository. Defaults to false if not specified.

    use_mercurial bool

    Use Mercurial if true, otherwise uses Git.

    branch String

    The branch of the remote repository to use. Defaults to 'master'.

    manualIntegration Boolean

    Limits to manual integration. Defaults to false if not specified.

    repoUrl String

    The URL of the source code repository.

    rollbackEnabled Boolean

    Enable roll-back for the repository. Defaults to false if not specified.

    useMercurial Boolean

    Use Mercurial if true, otherwise uses Git.

    Import

    Function Apps can be imported using the resource id, e.g.

     $ pulumi import azure:appservice/functionApp:FunctionApp functionapp1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Web/sites/functionapp1
    

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes

    This Pulumi package is based on the azurerm Terraform Provider.

    azure logo

    We recommend using Azure Native.

    Azure Classic v5.49.0 published on Tuesday, Aug 29, 2023 by Pulumi