Module appservice

This page documents the language specification for the azure package. If you're looking for help working with the inputs, outputs, or functions of azure resources in a Pulumi program, please see the resource documentation for examples and API reference.

namespace Kinds

Resources

Functions

Others

namespace Kinds

const App

const App: Kind = "App";

const Elastic

const Elastic: Kind = "elastic";

const FunctionApp

const FunctionApp: Kind = "FunctionApp";

const Linux

const Linux: Kind = "Linux";

const Windows

const Windows: Kind = "Windows";

const Xenon

const Xenon: Kind = "xenon";

Resources

Resource ActiveSlot

class ActiveSlot extends CustomResource

Promotes an App Service Slot to Production within an App Service.

Note: When using Slots - the appSettings, connectionString and siteConfig blocks on the azure.appservice.AppService resource will be overwritten when promoting a Slot using the azure.appservice.ActiveSlot resource.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
import * as random from "@pulumi/random";

const server = new random.RandomId("server", {});
// ...
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {});
// ...
const examplePlan = new azure.appservice.Plan("examplePlan", {});
// ...
const exampleAppService = new azure.appservice.AppService("exampleAppService", {});
// ...
const exampleSlot = new azure.appservice.Slot("exampleSlot", {});
// ...
const exampleActiveSlot = new azure.appservice.ActiveSlot("exampleActiveSlot", {
    resourceGroupName: exampleResourceGroup.name,
    appServiceName: exampleAppService.name,
    appServiceSlotName: exampleSlot.name,
});

constructor

new ActiveSlot(name: string, args: ActiveSlotArgs, opts?: pulumi.CustomResourceOptions)

Create a ActiveSlot resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ActiveSlotState, opts?: pulumi.CustomResourceOptions): ActiveSlot

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is ActiveSlot

Returns true if the given object is an instance of ActiveSlot. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property appServiceName

public appServiceName: pulumi.Output<string>;

The name of the App Service within which the Slot exists. Changing this forces a new resource to be created.

property appServiceSlotName

public appServiceSlotName: pulumi.Output<string>;

The name of the App Service Slot which should be promoted to the Production Slot within the App Service.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource AppService

class AppService extends CustomResource

Manages an App Service (within an App Service Plan).

Note: When using Slots - the appSettings, connectionString and siteConfig blocks on the azure.appservice.AppService resource will be overwritten when promoting a Slot using the azure.appservice.ActiveSlot resource.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const examplePlan = new azure.appservice.Plan("examplePlan", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    sku: {
        tier: "Standard",
        size: "S1",
    },
});
const exampleAppService = new azure.appservice.AppService("exampleAppService", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    appServicePlanId: examplePlan.id,
    site_config: {
        dotnetFrameworkVersion: "v4.0",
        scmType: "LocalGit",
    },
    appSettings: {
        SOME_KEY: "some-value",
    },
    connection_string: [{
        name: "Database",
        type: "SQLServer",
        value: "Server=some-server.mydomain.com;Integrated Security=SSPI",
    }],
});

constructor

new AppService(name: string, args: AppServiceArgs, opts?: pulumi.CustomResourceOptions)

Create a AppService resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AppServiceState, opts?: pulumi.CustomResourceOptions): AppService

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is AppService

Returns true if the given object is an instance of AppService. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property appServicePlanId

public appServicePlanId: pulumi.Output<string>;

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

property appSettings

public appSettings: pulumi.Output<{[key: string]: string}>;

A key-value pair of App Settings.

property authSettings

public authSettings: pulumi.Output<AppServiceAuthSettings>;

A authSettings block as defined below.

property backup

public backup: pulumi.Output<AppServiceBackup | undefined>;

A backup block as defined below.

property clientAffinityEnabled

public clientAffinityEnabled: pulumi.Output<boolean>;

Should the App Service send session affinity cookies, which route client requests in the same session to the same instance?

property clientCertEnabled

public clientCertEnabled: pulumi.Output<boolean | undefined>;

Does the App Service require client certificates for incoming requests? Defaults to false.

property connectionStrings

public connectionStrings: pulumi.Output<AppServiceConnectionString[]>;

One or more connectionString blocks as defined below.

property defaultSiteHostname

public defaultSiteHostname: pulumi.Output<string>;

The Default Hostname associated with the App Service - such as mysite.azurewebsites.net

property enabled

public enabled: pulumi.Output<boolean | undefined>;

Is the App Service Enabled?

property httpsOnly

public httpsOnly: pulumi.Output<boolean | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property identity

public identity: pulumi.Output<AppServiceIdentity>;

A Managed Service Identity block as defined below.

property location

public location: pulumi.Output<string>;

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

property logs

public logs: pulumi.Output<AppServiceLogs>;

A logs block as defined below.

property name

public name: pulumi.Output<string>;

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

property outboundIpAddresses

public outboundIpAddresses: pulumi.Output<string>;

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

property possibleOutboundIpAddresses

public possibleOutboundIpAddresses: pulumi.Output<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 outboundIpAddresses.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the App Service.

property siteConfig

public siteConfig: pulumi.Output<AppServiceSiteConfig>;

A siteConfig block as defined below.

property siteCredentials

public siteCredentials: pulumi.Output<AppServiceSiteCredential[]>;

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

property sourceControls

public sourceControls: pulumi.Output<AppServiceSourceControl[]>;

A sourceControl block as defined below, which contains the Source Control information when scmType is set to LocalGit.

property storageAccounts

public storageAccounts: pulumi.Output<AppServiceStorageAccount[]>;

One or more storageAccount blocks as defined below.

property tags

public tags: pulumi.Output<{[key: string]: string} | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Certificate

class Certificate extends CustomResource

Manages an App Service certificate.

constructor

new Certificate(name: string, args: CertificateArgs, opts?: pulumi.CustomResourceOptions)

Create a Certificate resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CertificateState, opts?: pulumi.CustomResourceOptions): Certificate

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is Certificate

Returns true if the given object is an instance of Certificate. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property expirationDate

public expirationDate: pulumi.Output<string>;

The expiration date for the certificate.

property friendlyName

public friendlyName: pulumi.Output<string>;

The friendly name of the certificate.

property hostNames

public hostNames: pulumi.Output<string[]>;

List of host names the certificate applies to.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property issueDate

public issueDate: pulumi.Output<string>;

The issue date for the certificate.

property issuer

public issuer: pulumi.Output<string>;

The name of the certificate issuer.

property keyVaultSecretId

public keyVaultSecretId: pulumi.Output<string | undefined>;

The ID of the Key Vault secret. Changing this forces a new resource to be created.

property location

public location: pulumi.Output<string>;

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

property name

public name: pulumi.Output<string>;

Specifies the name of the certificate. Changing this forces a new resource to be created.

property password

public password: pulumi.Output<string | undefined>;

The password to access the certificate’s private key. Changing this forces a new resource to be created.

property pfxBlob

public pfxBlob: pulumi.Output<string | undefined>;

The base64-encoded contents of the certificate. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

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

property subjectName

public subjectName: pulumi.Output<string>;

The subject name of the certificate.

property tags

public tags: pulumi.Output<{[key: string]: string} | undefined>;

property thumbprint

public thumbprint: pulumi.Output<string>;

The thumbprint for the certificate.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource CertificateOrder

class CertificateOrder extends CustomResource

Manages an App Service Certificate Order.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleCertificateOrder = new azure.appservice.CertificateOrder("exampleCertificateOrder", {
    resourceGroupName: exampleResourceGroup.name,
    location: "global",
    distinguishedName: "CN=example.com",
    productType: "Standard",
});

constructor

new CertificateOrder(name: string, args: CertificateOrderArgs, opts?: pulumi.CustomResourceOptions)

Create a CertificateOrder resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CertificateOrderState, opts?: pulumi.CustomResourceOptions): CertificateOrder

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is CertificateOrder

Returns true if the given object is an instance of CertificateOrder. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property appServiceCertificateNotRenewableReasons

public appServiceCertificateNotRenewableReasons: pulumi.Output<string[]>;

Reasons why App Service Certificate is not renewable at the current moment.

property autoRenew

public autoRenew: pulumi.Output<boolean | undefined>;

true if the certificate should be automatically renewed when it expires; otherwise, false. Defaults to true.

property certificates

public certificates: pulumi.Output<CertificateOrderCertificate[]>;

State of the Key Vault secret. A certificates block as defined below.

property csr

public csr: pulumi.Output<string>;

Last CSR that was created for this order.

property distinguishedName

public distinguishedName: pulumi.Output<string>;

The Distinguished Name for the App Service Certificate Order.

property domainVerificationToken

public domainVerificationToken: pulumi.Output<string>;

Domain verification token.

property expirationTime

public expirationTime: pulumi.Output<string>;

Certificate expiration time.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property intermediateThumbprint

public intermediateThumbprint: pulumi.Output<string>;

Certificate thumbprint intermediate certificate.

property isPrivateKeyExternal

public isPrivateKeyExternal: pulumi.Output<boolean>;

Whether the private key is external or not.

property keySize

public keySize: pulumi.Output<number | undefined>;

Certificate key size. Defaults to 2048.

property location

public location: pulumi.Output<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. Currently the only valid value is global.

property name

public name: pulumi.Output<string>;

Specifies the name of the certificate. Changing this forces a new resource to be created.

property productType

public productType: pulumi.Output<string | undefined>;

Certificate product type, such as Standard or WildCard.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

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

property rootThumbprint

public rootThumbprint: pulumi.Output<string>;

Certificate thumbprint for root certificate.

property signedCertificateThumbprint

public signedCertificateThumbprint: pulumi.Output<string>;

Certificate thumbprint for signed certificate.

property status

public status: pulumi.Output<string>;

Current order status.

property tags

public tags: pulumi.Output<{[key: string]: string} | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property validityInYears

public validityInYears: pulumi.Output<number | undefined>;

Duration in years (must be between 1 and 3). Defaults to 1.

Resource CustomHostnameBinding

class CustomHostnameBinding extends CustomResource

Manages a Hostname Binding within an App Service.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
import * as random from "@pulumi/random";

const server = new random.RandomId("server", {
    keepers: {
        azi_id: 1,
    },
    byteLength: 8,
});
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const examplePlan = new azure.appservice.Plan("examplePlan", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    sku: {
        tier: "Standard",
        size: "S1",
    },
});
const exampleAppService = new azure.appservice.AppService("exampleAppService", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    appServicePlanId: examplePlan.id,
});
const exampleCustomHostnameBinding = new azure.appservice.CustomHostnameBinding("exampleCustomHostnameBinding", {
    hostname: "www.mywebsite.com",
    appServiceName: exampleAppService.name,
    resourceGroupName: exampleResourceGroup.name,
});

constructor

new CustomHostnameBinding(name: string, args: CustomHostnameBindingArgs, opts?: pulumi.CustomResourceOptions)

Create a CustomHostnameBinding resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CustomHostnameBindingState, opts?: pulumi.CustomResourceOptions): CustomHostnameBinding

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is CustomHostnameBinding

Returns true if the given object is an instance of CustomHostnameBinding. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property appServiceName

public appServiceName: pulumi.Output<string>;

The name of the App Service in which to add the Custom Hostname Binding. Changing this forces a new resource to be created.

property hostname

public hostname: pulumi.Output<string>;

Specifies the Custom Hostname to use for the App Service, example www.example.com. Changing this forces a new resource to be created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

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

property sslState

public sslState: pulumi.Output<string | undefined>;

The SSL type. Possible values are IpBasedEnabled and SniEnabled. Changing this forces a new resource to be created.

property thumbprint

public thumbprint: pulumi.Output<string | undefined>;

The SSL certificate thumbprint. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property virtualIp

public virtualIp: pulumi.Output<string>;

The virtual IP address assigned to the hostname if IP based SSL is enabled.

Resource Environment

class Environment extends CustomResource

Manages an App Service Environment.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "westeurope"});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("exampleVirtualNetwork", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    addressSpaces: ["10.0.0.0/16"],
});
const ase = new azure.network.Subnet("ase", {
    resourceGroupName: exampleResourceGroup.name,
    virtualNetworkName: exampleVirtualNetwork.name,
    addressPrefix: "10.0.1.0/24",
});
const gateway = new azure.network.Subnet("gateway", {
    resourceGroupName: exampleResourceGroup.name,
    virtualNetworkName: exampleVirtualNetwork.name,
    addressPrefix: "10.0.2.0/24",
});
const exampleEnvironment = new azure.appservice.Environment("exampleEnvironment", {
    subnetId: ase.id,
    pricingTier: "I2",
    frontEndScaleFactor: 10,
});

constructor

new Environment(name: string, args: EnvironmentArgs, opts?: pulumi.CustomResourceOptions)

Create a Environment resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: EnvironmentState, opts?: pulumi.CustomResourceOptions): Environment

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is Environment

Returns true if the given object is an instance of Environment. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property frontEndScaleFactor

public frontEndScaleFactor: pulumi.Output<number | undefined>;

Scale factor for front end instances. Possible values are between 5 and 15. Defaults to 15.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property internalLoadBalancingMode

public internalLoadBalancingMode: pulumi.Output<string | undefined>;

Specifies which endpoints to serve internally in the Virtual Network for the App Service Environment. Possible values are None, Web and Publishing. Defaults to None.

property location

public location: pulumi.Output<string>;

The location where the App Service Environment exists.

property name

public name: pulumi.Output<string>;

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

property pricingTier

public pricingTier: pulumi.Output<string | undefined>;

Pricing tier for the front end instances. Possible values are I1, I2 and I3. Defaults to I1.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the Resource Group where the App Service Environment exists. Defaults to the Resource Group of the Subnet (specified by subnetId).

property subnetId

public subnetId: pulumi.Output<string>;

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

property tags

public tags: pulumi.Output<{[key: string]: string} | undefined>;

A mapping of tags to assign to the resource. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource EventSubscription

class EventSubscription extends ComponentResource

Base type for all subscription types. An event subscription represents a connection between some azure resource an an FunctionApp that will be triggered when something happens to that resource.

constructor

new EventSubscription(type: string, name: string, bindingsOrFunc: pulumi.Input<BindingDefinition[]> | Function<C, E, R>, args: CallbackFunctionAppArgs<C, E, R>, opts: ComponentResourceOptions)

method getData

protected getData(): Promise<TData>

Retrieves the data produces by [initialize]. The data is immediately available in a derived class’s constructor after the super(...) call to ComponentResource.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method initialize

protected initialize(args: Inputs): Promise<TData>

Can be overridden by a subclass to asynchronously initialize data for this Component automatically when constructed. The data will be available immediately for subclass constructors to use. To access the data use .getData.

method isInstance

static isInstance(obj: any): obj is ComponentResource

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

method registerOutputs

protected registerOutputs(outputs?: Inputs | Promise<Inputs> | Output<Inputs>): void

registerOutputs registers synthetic outputs that a component has initialized, usually by allocating other child sub-resources and propagating their resulting property values.

ComponentResources can call this at the end of their constructor to indicate that they are done creating child resources. This is not strictly necessary as this will automatically be called after the initialize method completes.

property functionApp

public functionApp: CallbackFunctionApp<C, E, R>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource FunctionApp

class FunctionApp extends CustomResource

Manages a Function App.

Example Usage

With App Service Plan)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "westus2"});
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,
    storageConnectionString: exampleAccount.primaryConnectionString,
});
In A Consumption Plan)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "westus2"});
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,
    storageConnectionString: exampleAccount.primaryConnectionString,
});
Linux)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "westus2"});
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",
    reserved: true,
    sku: {
        tier: "Dynamic",
        size: "Y1",
    },
});
const exampleFunctionApp = new azure.appservice.FunctionApp("exampleFunctionApp", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    appServicePlanId: examplePlan.id,
    storageConnectionString: exampleAccount.primaryConnectionString,
    osType: "linux",
});

constructor

new FunctionApp(name: string, args: FunctionAppArgs, opts?: pulumi.CustomResourceOptions)

Create a FunctionApp resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FunctionAppState, opts?: pulumi.CustomResourceOptions): FunctionApp

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

method getFunctionKeys

getFunctionKeys(functionName: pulumi.Input<string>): pulumi.Output<FunctionKeys>

Retrieve the keys associated with the given Function.

method getHostKeys

getHostKeys(): pulumi.Output<FunctionHostKeys>

Retrieve the keys associated with the Function App.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is FunctionApp

Returns true if the given object is an instance of FunctionApp. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property appServicePlanId

public appServicePlanId: pulumi.Output<string>;

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

property appSettings

public appSettings: pulumi.Output<{[key: string]: string} | undefined>;

A key-value pair of App Settings.

property authSettings

public authSettings: pulumi.Output<FunctionAppAuthSettings>;

A authSettings block as defined below.

property clientAffinityEnabled

public clientAffinityEnabled: pulumi.Output<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property connectionStrings

public connectionStrings: pulumi.Output<FunctionAppConnectionString[]>;

An connectionString block as defined below.

property dailyMemoryTimeQuota

public dailyMemoryTimeQuota: pulumi.Output<number | undefined>;

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. Defaults to 0.

property defaultHostname

public defaultHostname: pulumi.Output<string>;

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

property enableBuiltinLogging

public enableBuiltinLogging: pulumi.Output<boolean | undefined>;

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

property enabled

public enabled: pulumi.Output<boolean | undefined>;

Is the Function App enabled?

property httpsOnly

public httpsOnly: pulumi.Output<boolean | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property identity

public identity: pulumi.Output<FunctionAppIdentity>;

An identity block as defined below.

property kind

public kind: pulumi.Output<string>;

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

property location

public location: pulumi.Output<string>;

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

property name

public name: pulumi.Output<string>;

Specifies the name of the Function App. Changing this forces a new resource to be created.

property osType

public osType: pulumi.Output<string | undefined>;

A string indicating the Operating System type for this function app.

property outboundIpAddresses

public outboundIpAddresses: pulumi.Output<string>;

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

property possibleOutboundIpAddresses

public possibleOutboundIpAddresses: pulumi.Output<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 outboundIpAddresses.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the Function App.

property siteConfig

public siteConfig: pulumi.Output<FunctionAppSiteConfig>;

A siteConfig object as defined below.

property siteCredentials

public siteCredentials: pulumi.Output<FunctionAppSiteCredential[]>;

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

property storageAccountAccessKey

public storageAccountAccessKey: pulumi.Output<string>;

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

property storageAccountName

public storageAccountName: pulumi.Output<string>;

The backend storage account name which will be used by this Function App (such as the dashboard, logs).

property storageConnectionString

DEPRECATED Deprecated in favor of storage_account_name and storage_account_access_key
public storageConnectionString: pulumi.Output<string>;

The connection string to the backend storage account which will be used by this Function App (such as the dashboard, logs). Typically set to the primaryConnectionString of a storage account resource.

property tags

public tags: pulumi.Output<{[key: string]: string} | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property version

public version: pulumi.Output<string | undefined>;

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

Resource FunctionAppSlot

class FunctionAppSlot extends CustomResource

Manages a Function App deployment Slot.

Example Usage

With App Service Plan)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "westus2"});
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,
});
const exampleFunctionAppSlot = new azure.appservice.FunctionAppSlot("exampleFunctionAppSlot", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    appServicePlanId: examplePlan.id,
    functionAppName: exampleFunctionApp.name,
    storageAccountName: exampleAccount.name,
    storageAccountAccessKey: exampleAccount.primaryAccessKey,
});

constructor

new FunctionAppSlot(name: string, args: FunctionAppSlotArgs, opts?: pulumi.CustomResourceOptions)

Create a FunctionAppSlot resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FunctionAppSlotState, opts?: pulumi.CustomResourceOptions): FunctionAppSlot

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is FunctionAppSlot

Returns true if the given object is an instance of FunctionAppSlot. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property appServicePlanId

public appServicePlanId: pulumi.Output<string>;

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

property appSettings

public appSettings: pulumi.Output<{[key: string]: string} | undefined>;

A key-value pair of App Settings.

property authSettings

public authSettings: pulumi.Output<FunctionAppSlotAuthSettings>;

An authSettings block as defined below.

property clientAffinityEnabled

public clientAffinityEnabled: pulumi.Output<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property connectionStrings

public connectionStrings: pulumi.Output<FunctionAppSlotConnectionString[]>;

A connectionString block as defined below.

property dailyMemoryTimeQuota

public dailyMemoryTimeQuota: pulumi.Output<number | undefined>;

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. Defaults to 0.

property defaultHostname

public defaultHostname: pulumi.Output<string>;

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

property enableBuiltinLogging

public enableBuiltinLogging: pulumi.Output<boolean | undefined>;

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

property enabled

public enabled: pulumi.Output<boolean | undefined>;

Is the Function App enabled?

property functionAppName

public functionAppName: pulumi.Output<string>;

property httpsOnly

public httpsOnly: pulumi.Output<boolean | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property identity

public identity: pulumi.Output<FunctionAppSlotIdentity>;

An identity block as defined below.

property kind

public kind: pulumi.Output<string>;

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

property location

public location: pulumi.Output<string>;

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

property name

public name: pulumi.Output<string>;

Specifies the name of the Function App. Changing this forces a new resource to be created.

property osType

public osType: pulumi.Output<string | undefined>;

A string indicating the Operating System type for this function app.

property outboundIpAddresses

public outboundIpAddresses: pulumi.Output<string>;

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

property possibleOutboundIpAddresses

public possibleOutboundIpAddresses: pulumi.Output<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 outboundIpAddresses.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the Function App Slot.

property siteConfig

public siteConfig: pulumi.Output<FunctionAppSlotSiteConfig>;

A siteConfig object as defined below.

property siteCredentials

public siteCredentials: pulumi.Output<FunctionAppSlotSiteCredential[]>;

A siteCredential block as defined below, which contains the site-level credentials used to publish to this Function App Slot.

property storageAccountAccessKey

public storageAccountAccessKey: pulumi.Output<string>;

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

property storageAccountName

public storageAccountName: pulumi.Output<string>;

The backend storage account name which will be used by the Function App (such as the dashboard, logs).

property tags

public tags: pulumi.Output<{[key: string]: string} | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property version

public version: pulumi.Output<string | undefined>;

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

Resource HybridConnection

class HybridConnection extends CustomResource

Manages an App Service Hybrid Connection for an existing App Service, Relay and Service Bus.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const examplePlan = new azure.appservice.Plan("examplePlan", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    sku: {
        tier: "Standard",
        size: "S1",
    },
});
const exampleAppService = new azure.appservice.AppService("exampleAppService", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    appServicePlanId: examplePlan.id,
});
const exampleNamespace = new azure.relay.Namespace("exampleNamespace", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    skuName: "Standard",
});
const exampleHybridConnection = new azure.relay.HybridConnection("exampleHybridConnection", {
    resourceGroupName: exampleResourceGroup.name,
    relayNamespaceName: exampleNamespace.name,
    userMetadata: "examplemetadata",
});
const exampleAppservice_hybridConnectionHybridConnection = new azure.appservice.HybridConnection("exampleAppservice/hybridConnectionHybridConnection", {
    appServiceName: exampleAppService.name,
    resourceGroupName: exampleResourceGroup.name,
    relayId: exampleHybridConnection.id,
    hostname: "testhostname.example",
    port: 8080,
    sendKeyName: "exampleSharedAccessKey",
});

constructor

new HybridConnection(name: string, args: HybridConnectionArgs, opts?: pulumi.CustomResourceOptions)

Create a HybridConnection resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: HybridConnectionState, opts?: pulumi.CustomResourceOptions): HybridConnection

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is HybridConnection

Returns true if the given object is an instance of HybridConnection. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property appServiceName

public appServiceName: pulumi.Output<string>;

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

property hostname

public hostname: pulumi.Output<string>;

The hostname of the endpoint.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property namespaceName

public namespaceName: pulumi.Output<string>;

The name of the Relay Namespace.

property port

public port: pulumi.Output<number>;

The port of the endpoint.

property relayId

public relayId: pulumi.Output<string>;

The Resource ID of Service Bus relay. Changing this forces a new resource to be created.

property relayName

public relayName: pulumi.Output<string>;

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

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

property sendKeyName

public sendKeyName: pulumi.Output<string | undefined>;

The name of the Service Bus key.

property sendKeyValue

public sendKeyValue: pulumi.Output<string>;

The value of the Service Bus Primary Access key.

property serviceBusNamespace

public serviceBusNamespace: pulumi.Output<string>;

The name of the Service Bus namespace.

property serviceBusSuffix

public serviceBusSuffix: pulumi.Output<string>;

The suffix for the service bus endpoint.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource PackagedFunctionApp

class PackagedFunctionApp extends ComponentResource

A base component for custom Function App components. It is required to provide a common parent for all resources, so that they are logically grouped under the same root in the Pulumi resource tree.

constructor

new PackagedFunctionApp(type: string, name: string, args: ArchiveFunctionAppArgs, opts: ComponentResourceOptions)

method getData

protected getData(): Promise<TData>

Retrieves the data produces by [initialize]. The data is immediately available in a derived class’s constructor after the super(...) call to ComponentResource.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method initialize

protected initialize(args: Inputs): Promise<TData>

Can be overridden by a subclass to asynchronously initialize data for this Component automatically when constructed. The data will be available immediately for subclass constructors to use. To access the data use .getData.

method isInstance

static isInstance(obj: any): obj is ComponentResource

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

method registerOutputs

protected registerOutputs(outputs?: Inputs | Promise<Inputs> | Output<Inputs>): void

registerOutputs registers synthetic outputs that a component has initialized, usually by allocating other child sub-resources and propagating their resulting property values.

ComponentResources can call this at the end of their constructor to indicate that they are done creating child resources. This is not strictly necessary as this will automatically be called after the initialize method completes.

property account

public account: Account;

Storage account where the FunctionApp’s zipbBlob is uploaded to.

property container

public container: Container;

Storage container where the FunctionApp’s zipbBlob is uploaded to.

property endpoint

public endpoint: pulumi.Output<string>;

Root HTTP endpoint of the Function App.

property functionApp

public functionApp: FunctionApp;

The Function App which contains the functions from the archive.

property plan

public plan: Plan;

The plan this Function App runs under.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zipBlob

public zipBlob: Blob;

The blob containing all the code for this FunctionApp.

Resource Plan

class Plan extends CustomResource

Manages an App Service Plan component.

Example Usage

Dedicated)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const examplePlan = new azure.appservice.Plan("examplePlan", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    sku: {
        tier: "Standard",
        size: "S1",
    },
});
Shared / Consumption Plan)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const examplePlan = new azure.appservice.Plan("examplePlan", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    kind: "FunctionApp",
    sku: {
        tier: "Dynamic",
        size: "Y1",
    },
});
Linux)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const examplePlan = new azure.appservice.Plan("examplePlan", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    kind: "Linux",
    reserved: true,
    sku: {
        tier: "Standard",
        size: "S1",
    },
});
Windows Container)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const examplePlan = new azure.appservice.Plan("examplePlan", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    kind: "xenon",
    isXenon: true,
    sku: {
        tier: "PremiumContainer",
        size: "PC2",
    },
});

constructor

new Plan(name: string, args: PlanArgs, opts?: pulumi.CustomResourceOptions)

Create a Plan resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PlanState, opts?: pulumi.CustomResourceOptions): Plan

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is Plan

Returns true if the given object is an instance of Plan. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property appServiceEnvironmentId

public appServiceEnvironmentId: pulumi.Output<string | undefined>;

The ID of the App Service Environment where the App Service Plan should be located. Changing forces a new resource to be created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property isXenon

public isXenon: pulumi.Output<boolean | undefined>;

property kind

public kind: pulumi.Output<string | undefined>;

The kind of the App Service Plan to create. Possible values are Windows (also available as App), Linux, elastic (for Premium Consumption) and FunctionApp (for a Consumption Plan). Defaults to Windows. Changing this forces a new resource to be created.

property location

public location: pulumi.Output<string>;

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

property maximumElasticWorkerCount

public maximumElasticWorkerCount: pulumi.Output<number>;

The maximum number of total workers allowed for this ElasticScaleEnabled App Service Plan.

property maximumNumberOfWorkers

public maximumNumberOfWorkers: pulumi.Output<number>;

The maximum number of workers supported with the App Service Plan’s sku.

property name

public name: pulumi.Output<string>;

Specifies the name of the App Service Plan component. Changing this forces a new resource to be created.

property perSiteScaling

public perSiteScaling: pulumi.Output<boolean | undefined>;

Can Apps assigned to this App Service Plan be scaled independently? If set to false apps assigned to this plan will scale to all instances of the plan. Defaults to false.

property reserved

public reserved: pulumi.Output<boolean | undefined>;

Is this App Service Plan Reserved. Defaults to false.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the App Service Plan component.

property sku

public sku: pulumi.Output<PlanSku>;

A sku block as documented below.

property tags

public tags: pulumi.Output<{[key: string]: string} | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Slot

class Slot extends CustomResource

Manages an App Service Slot (within an App Service).

Note: When using Slots - the appSettings, connectionString and siteConfig blocks on the azure.appservice.AppService resource will be overwritten when promoting a Slot using the azure.appservice.ActiveSlot resource.

Example Usage

Net 4.X)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
import * as random from "@pulumi/random";

const server = new random.RandomId("server", {
    keepers: {
        azi_id: 1,
    },
    byteLength: 8,
});
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const examplePlan = new azure.appservice.Plan("examplePlan", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    sku: {
        tier: "Standard",
        size: "S1",
    },
});
const exampleAppService = new azure.appservice.AppService("exampleAppService", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    appServicePlanId: examplePlan.id,
    site_config: {
        dotnetFrameworkVersion: "v4.0",
    },
    appSettings: {
        SOME_KEY: "some-value",
    },
    connection_string: [{
        name: "Database",
        type: "SQLServer",
        value: "Server=some-server.mydomain.com;Integrated Security=SSPI",
    }],
});
const exampleSlot = new azure.appservice.Slot("exampleSlot", {
    appServiceName: exampleAppService.name,
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    appServicePlanId: examplePlan.id,
    site_config: {
        dotnetFrameworkVersion: "v4.0",
    },
    appSettings: {
        SOME_KEY: "some-value",
    },
    connection_string: [{
        name: "Database",
        type: "SQLServer",
        value: "Server=some-server.mydomain.com;Integrated Security=SSPI",
    }],
});
Java 1.8)
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
import * as random from "@pulumi/random";

const server = new random.RandomId("server", {
    keepers: {
        azi_id: 1,
    },
    byteLength: 8,
});
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const examplePlan = new azure.appservice.Plan("examplePlan", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    sku: {
        tier: "Standard",
        size: "S1",
    },
});
const exampleAppService = new azure.appservice.AppService("exampleAppService", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    appServicePlanId: examplePlan.id,
    site_config: {
        javaVersion: "1.8",
        javaContainer: "JETTY",
        javaContainerVersion: "9.3",
    },
});
const exampleSlot = new azure.appservice.Slot("exampleSlot", {
    appServiceName: exampleAppService.name,
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    appServicePlanId: examplePlan.id,
    site_config: {
        javaVersion: "1.8",
        javaContainer: "JETTY",
        javaContainerVersion: "9.3",
    },
});

constructor

new Slot(name: string, args: SlotArgs, opts?: pulumi.CustomResourceOptions)

Create a Slot resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SlotState, opts?: pulumi.CustomResourceOptions): Slot

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is Slot

Returns true if the given object is an instance of Slot. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property appServiceName

public appServiceName: pulumi.Output<string>;

The name of the App Service within which to create the App Service Slot. Changing this forces a new resource to be created.

property appServicePlanId

public appServicePlanId: pulumi.Output<string>;

The ID of the App Service Plan within which to create this App Service Slot. Changing this forces a new resource to be created.

property appSettings

public appSettings: pulumi.Output<{[key: string]: string}>;

A key-value pair of App Settings.

property authSettings

public authSettings: pulumi.Output<SlotAuthSettings>;

A authSettings block as defined below.

property clientAffinityEnabled

public clientAffinityEnabled: pulumi.Output<boolean>;

Should the App Service Slot send session affinity cookies, which route client requests in the same session to the same instance?

property connectionStrings

public connectionStrings: pulumi.Output<SlotConnectionString[]>;

An connectionString block as defined below.

property defaultSiteHostname

public defaultSiteHostname: pulumi.Output<string>;

The Default Hostname associated with the App Service Slot - such as mysite.azurewebsites.net

property enabled

public enabled: pulumi.Output<boolean | undefined>;

Is the App Service Slot Enabled?

property httpsOnly

public httpsOnly: pulumi.Output<boolean | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property identity

public identity: pulumi.Output<SlotIdentity>;

A Managed Service Identity block as defined below.

property location

public location: pulumi.Output<string>;

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

property logs

public logs: pulumi.Output<SlotLogs>;

property name

public name: pulumi.Output<string>;

Specifies the name of the App Service Slot component. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the App Service Slot component.

property siteConfig

public siteConfig: pulumi.Output<SlotSiteConfig>;

A siteConfig object as defined below.

property siteCredentials

public siteCredentials: pulumi.Output<SlotSiteCredential[]>;

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

property tags

public tags: pulumi.Output<{[key: string]: string} | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource SourceCodeToken

class SourceCodeToken extends CustomResource

Manages an App Service source control token.

NOTE: Source Control Tokens are configured at the subscription level, not on each App Service - as such this can only be configured Subscription-wide

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const example = new azure.appservice.SourceCodeToken("example", {
    token: "7e57735e77e577e57",
    type: "GitHub",
});

constructor

new SourceCodeToken(name: string, args: SourceCodeTokenArgs, opts?: pulumi.CustomResourceOptions)

Create a SourceCodeToken resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SourceCodeTokenState, opts?: pulumi.CustomResourceOptions): SourceCodeToken

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is SourceCodeToken

Returns true if the given object is an instance of SourceCodeToken. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property token

public token: pulumi.Output<string>;

The OAuth access token.

property tokenSecret

public tokenSecret: pulumi.Output<string | undefined>;

The OAuth access token secret.

property type

public type: pulumi.Output<string>;

The source control type. Possible values are BitBucket, Dropbox, GitHub and OneDrive.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource VirtualNetworkSwiftConnection

class VirtualNetworkSwiftConnection extends CustomResource

Manages an App Service Virtual Network Association (this is for the Regional VNet Integration which is still in preview).

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("testResourceGroup", {location: "uksouth"});
const testVirtualNetwork = new azure.network.VirtualNetwork("testVirtualNetwork", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const test1 = new azure.network.Subnet("test1", {
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
    addressPrefix: "10.0.1.0/24",
    delegation: [{
        name: "acctestdelegation",
        service_delegation: {
            name: "Microsoft.Web/serverFarms",
            actions: ["Microsoft.Network/virtualNetworks/subnets/action"],
        },
    }],
});
const testPlan = new azure.appservice.Plan("testPlan", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    sku: {
        tier: "Standard",
        size: "S1",
    },
});
const testAppService = new azure.appservice.AppService("testAppService", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    appServicePlanId: testPlan.id,
});
const testVirtualNetworkSwiftConnection = new azure.appservice.VirtualNetworkSwiftConnection("testVirtualNetworkSwiftConnection", {
    appServiceId: testAppService.id,
    subnetId: test1.id,
});

constructor

new VirtualNetworkSwiftConnection(name: string, args: VirtualNetworkSwiftConnectionArgs, opts?: pulumi.CustomResourceOptions)

Create a VirtualNetworkSwiftConnection resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VirtualNetworkSwiftConnectionState, opts?: pulumi.CustomResourceOptions): VirtualNetworkSwiftConnection

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is VirtualNetworkSwiftConnection

Returns true if the given object is an instance of VirtualNetworkSwiftConnection. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property appServiceId

public appServiceId: pulumi.Output<string>;

The ID of the App Service to associate to the VNet. Changing this forces a new resource to be created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property subnetId

public subnetId: pulumi.Output<string>;

The ID of the subnet the app service will be associated to (the subnet must have a serviceDelegation configured for Microsoft.Web/serverFarms).

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Functions

Function getAppService

getAppService(args: GetAppServiceArgs, opts?: pulumi.InvokeOptions): Promise<GetAppServiceResult>

Use this data source to access information about an existing App Service.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const example = azure.appservice.getAppService({
    name: "search-app-service",
    resourceGroupName: "search-service",
});
export const appServiceId = example.then(example => example.id);

Function getAppServiceEnvironment

getAppServiceEnvironment(args: GetAppServiceEnvironmentArgs, opts?: pulumi.InvokeOptions): Promise<GetAppServiceEnvironmentResult>

Use this data source to access information about an existing App Service Environment

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const example = azure.appservice.getAppServiceEnvironment({
    name: "example-ase",
    resourceGroupName: "example-rg",
});
export const appServiceEnvironmentId = data.azurerm_app_service_environment.id;

Function getAppServicePlan

getAppServicePlan(args: GetAppServicePlanArgs, opts?: pulumi.InvokeOptions): Promise<GetAppServicePlanResult>

Use this data source to access information about an existing App Service Plan (formerly known as a Server Farm).

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const example = azure.appservice.getAppServicePlan({
    name: "search-app-service-plan",
    resourceGroupName: "search-service",
});
export const appServicePlanId = example.then(example => example.id);

Function getCertificate

getCertificate(args: GetCertificateArgs, opts?: pulumi.InvokeOptions): Promise<GetCertificateResult>

Use this data source to access information about an App Service Certificate.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const example = azure.appservice.getCertificate({
    name: "example-app-service-certificate",
    resourceGroupName: "example-rg",
});
export const appServiceCertificateId = example.then(example => example.id);

Function getCertificateOrder

getCertificateOrder(args: GetCertificateOrderArgs, opts?: pulumi.InvokeOptions): Promise<GetCertificateOrderResult>

Use this data source to access information about an existing App Service Certificate Order.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const example = azure.appservice.getCertificateOrder({
    name: "example-cert-order",
    resourceGroupName: "example-resources",
});
export const certificateOrderId = example.then(example => example.id);

Function getFunctionApp

getFunctionApp(args: GetFunctionAppArgs, opts?: pulumi.InvokeOptions): Promise<GetFunctionAppResult>

Use this data source to access information about a Function App.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const example = azure.appservice.getFunctionApp({
    name: "test-azure-functions",
    resourceGroupName: azurerm_resource_group.example.name,
});

Others

interface ActiveSlotArgs

interface ActiveSlotArgs

The set of arguments for constructing a ActiveSlot resource.

property appServiceName

appServiceName: pulumi.Input<string>;

The name of the App Service within which the Slot exists. Changing this forces a new resource to be created.

property appServiceSlotName

appServiceSlotName: pulumi.Input<string>;

The name of the App Service Slot which should be promoted to the Production Slot within the App Service.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

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

interface ActiveSlotState

interface ActiveSlotState

Input properties used for looking up and filtering ActiveSlot resources.

property appServiceName

appServiceName?: pulumi.Input<string>;

The name of the App Service within which the Slot exists. Changing this forces a new resource to be created.

property appServiceSlotName

appServiceSlotName?: pulumi.Input<string>;

The name of the App Service Slot which should be promoted to the Production Slot within the App Service.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

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

interface AppServiceArgs

interface AppServiceArgs

The set of arguments for constructing a AppService resource.

property appServicePlanId

appServicePlanId: pulumi.Input<string>;

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

property appSettings

appSettings?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A key-value pair of App Settings.

property authSettings

authSettings?: pulumi.Input<AppServiceAuthSettings>;

A authSettings block as defined below.

property backup

backup?: pulumi.Input<AppServiceBackup>;

A backup block as defined below.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the App Service send session affinity cookies, which route client requests in the same session to the same instance?

property clientCertEnabled

clientCertEnabled?: pulumi.Input<boolean>;

Does the App Service require client certificates for incoming requests? Defaults to false.

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<AppServiceConnectionString>[]>;

One or more connectionString blocks as defined below.

property enabled

enabled?: pulumi.Input<boolean>;

Is the App Service Enabled?

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<AppServiceIdentity>;

A Managed Service Identity block as defined below.

property location

location?: pulumi.Input<string>;

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

property logs

logs?: pulumi.Input<AppServiceLogs>;

A logs block as defined below.

property name

name?: pulumi.Input<string>;

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

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the App Service.

property siteConfig

siteConfig?: pulumi.Input<AppServiceSiteConfig>;

A siteConfig block as defined below.

property storageAccounts

storageAccounts?: pulumi.Input<pulumi.Input<AppServiceStorageAccount>[]>;

One or more storageAccount blocks as defined below.

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource.

interface AppServiceState

interface AppServiceState

Input properties used for looking up and filtering AppService resources.

property appServicePlanId

appServicePlanId?: pulumi.Input<string>;

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

property appSettings

appSettings?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A key-value pair of App Settings.

property authSettings

authSettings?: pulumi.Input<AppServiceAuthSettings>;

A authSettings block as defined below.

property backup

backup?: pulumi.Input<AppServiceBackup>;

A backup block as defined below.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the App Service send session affinity cookies, which route client requests in the same session to the same instance?

property clientCertEnabled

clientCertEnabled?: pulumi.Input<boolean>;

Does the App Service require client certificates for incoming requests? Defaults to false.

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<AppServiceConnectionString>[]>;

One or more connectionString blocks as defined below.

property defaultSiteHostname

defaultSiteHostname?: pulumi.Input<string>;

The Default Hostname associated with the App Service - such as mysite.azurewebsites.net

property enabled

enabled?: pulumi.Input<boolean>;

Is the App Service Enabled?

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<AppServiceIdentity>;

A Managed Service Identity block as defined below.

property location

location?: pulumi.Input<string>;

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

property logs

logs?: pulumi.Input<AppServiceLogs>;

A logs block as defined below.

property name

name?: pulumi.Input<string>;

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

property outboundIpAddresses

outboundIpAddresses?: pulumi.Input<string>;

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

property possibleOutboundIpAddresses

possibleOutboundIpAddresses?: pulumi.Input<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 outboundIpAddresses.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the App Service.

property siteConfig

siteConfig?: pulumi.Input<AppServiceSiteConfig>;

A siteConfig block as defined below.

property siteCredentials

siteCredentials?: pulumi.Input<pulumi.Input<AppServiceSiteCredential>[]>;

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

property sourceControls

sourceControls?: pulumi.Input<pulumi.Input<AppServiceSourceControl>[]>;

A sourceControl block as defined below, which contains the Source Control information when scmType is set to LocalGit.

property storageAccounts

storageAccounts?: pulumi.Input<pulumi.Input<AppServiceStorageAccount>[]>;

One or more storageAccount blocks as defined below.

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource.

class ArchiveFunctionApp

class ArchiveFunctionApp extends PackagedFunctionApp

A ArchiveFunctionApp is a component that instantiates a azure.appservice.FunctionApp and all the required dependencies and deploys the specified archive into it. The archive must contain the full artifact to be deployed into the Function App.

constructor

new ArchiveFunctionApp(name: string, args: ArchiveFunctionAppArgs, opts: ComponentResourceOptions)

method getData

protected getData(): Promise<TData>

Retrieves the data produces by [initialize]. The data is immediately available in a derived class’s constructor after the super(...) call to ComponentResource.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method initialize

protected initialize(args: Inputs): Promise<TData>

Can be overridden by a subclass to asynchronously initialize data for this Component automatically when constructed. The data will be available immediately for subclass constructors to use. To access the data use .getData.

method isInstance

static isInstance(obj: any): obj is ComponentResource

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

method registerOutputs

protected registerOutputs(outputs?: Inputs | Promise<Inputs> | Output<Inputs>): void

registerOutputs registers synthetic outputs that a component has initialized, usually by allocating other child sub-resources and propagating their resulting property values.

ComponentResources can call this at the end of their constructor to indicate that they are done creating child resources. This is not strictly necessary as this will automatically be called after the initialize method completes.

property account

public account: Account;

Storage account where the FunctionApp’s zipbBlob is uploaded to.

property container

public container: Container;

Storage container where the FunctionApp’s zipbBlob is uploaded to.

property endpoint

public endpoint: pulumi.Output<string>;

Root HTTP endpoint of the Function App.

property functionApp

public functionApp: FunctionApp;

The Function App which contains the functions from the archive.

property plan

public plan: Plan;

The plan this Function App runs under.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zipBlob

public zipBlob: Blob;

The blob containing all the code for this FunctionApp.

interface ArchiveFunctionAppArgs

interface ArchiveFunctionAppArgs extends FunctionAppArgsBase

Arguments to create a Function App component and deploy the specified raw archive package.

property account

account?: storageForTypesOnly.Account;

The storage account to use where the zip-file blob for the FunctionApp will be located. If not provided, a new storage account will create. It will be a ‘Standard’, ‘LRS’, ‘StorageV2’ account.

property appSettings

appSettings?: pulumi.Input<{[key: string]: any}>;

A key-value pair of App Settings.

property archive

archive: pulumi.Input<Archive>;

The deployment package of a Function App to deploy as-is.

property authSettings

authSettings?: pulumi.Input<FunctionAppAuthSettings>;

A authSettings block as defined below.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property codePathOptions

codePathOptions?: pulumi.runtime.CodePathOptions;

Options to control which files and packages are included with the serialized FunctionApp code.

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<{
    name: pulumi.Input<string>;
    type: pulumi.Input<string>;
    value: pulumi.Input<string>;
}>[]>;

An connection_string block as defined below.

property container

container?: storageForTypesOnly.Container;

The container to use where the zip-file blob for the FunctionApp will be located. If not provided, the root container of the storage account will be used.

property dailyMemoryTimeQuota

dailyMemoryTimeQuota?: pulumi.Input<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. Defaults to 0.

property enableBuiltinLogging

enableBuiltinLogging?: pulumi.Input<boolean>;

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

property enabled

enabled?: pulumi.Input<boolean>;

Is the Function App enabled?

property hostSettings

hostSettings?: HostSettings;

Host configuration options.

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<FunctionAppIdentity>;

An identity block as defined below.

property location

location?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

The name of the Function App.

property nodeVersion

nodeVersion?: pulumi.Input<string>;

Controls the value of WEBSITE_NODE_DEFAULT_VERSION in appSettings. If not provided, defaults to ~12.

property osType

osType?: pulumi.Input<string>;

A string indicating the Operating System type for this function app.

property plan

plan?: appservice.Plan;

The App Service Plan within which to create this Function App. Changing this forces a new resource to be created.

If not provided, a default “Consumption” plan will be created. See: https://docs.microsoft.com/en-us/azure/azure-functions/functions-scale#consumption-plan for more details.

property resourceGroup

resourceGroup?: core.ResourceGroup;

The resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName].

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName]. Either [resourceGroupName] or [resourceGroup] must be supplied.

property siteConfig

siteConfig?: pulumi.Input<FunctionAppSiteConfig>;

A site_config object as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property version

version?: pulumi.Input<string>;

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

type BindingDefinition

type BindingDefinition = BindingDefinition;

Represents a Binding that will be emitted into the function.json config file for the FunctionApp. Individual services will have more specific information they will define in their own bindings.

interface BindingSettings

interface BindingSettings

Azure Function Binding with the required corresponding application settings (e.g., a connection string setting).

property binding

binding: pulumi.Input<T>;

A binding definition.

property settings

settings: pulumi.Input<{[key: string]: any}>;

A dictionary of application settings to be applied to the Function App.

type Callback

type Callback = (context: C, event: E, inputs: any[]) => Promise<R> | void;

Callback is the signature for an Azure FunctionApp entrypoint.

[context] Azure uses this parameter to provide details of your FunctionApp’s execution. For more information, see https://docs.microsoft.com/en-us/azure/azure-functions/functions-reference-node

[event] is the data passed in by specific services calling the FunctionApp (like eventhub or storage). The shape of it will be specific to individual services.

This function can be synchronous or asynchronous function, though async is only supported with an FunctionApps v2 or higher. On v1 runtimes the function must be synchronous. To signal completion synchronously, call context.done() passing in an optional error or result value as appropriate. For async functions, context.done() does not need to be called, and instead a Promise containing the result can be returned.

interface CallbackArgs

interface CallbackArgs

Arguments to pass either a callback or a callback factory to be used as an Azure Function body.

property callback

callback?: Callback<C, E, R>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<C, E, R>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

type CallbackFactory

type CallbackFactory = () => Callback<C, E, R>;

CallbackFactory is the signature for a function that will be called once to produce the function that Azure FunctionApps will call into. It can be used to initialize expensive state once that can then be used across all invocations of the FunctionApp (as long as the FunctionApp is using the same warm node instance).

class CallbackFunctionApp

class CallbackFunctionApp extends FunctionApp

A CallbackFunctionApp is a special type of azure.appservice.FunctionApp that can be created out of an actual JavaScript function instance. The function instance will be analyzed and packaged up (including dependencies) into a form that can be used by Azure Functions. See https://github.com/pulumi/docs/blob/master/reference/serializing-functions.md for additional details on this process.

constructor

new CallbackFunctionApp(name: string, bindingsOrFunc: pulumi.Input<BindingDefinition[]> | Function<C, E, R>, args: CallbackFunctionAppArgs<C, E, R>, opts: CustomResourceOptions)

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FunctionAppState, opts?: pulumi.CustomResourceOptions): FunctionApp

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

method getFunctionKeys

getFunctionKeys(functionName: pulumi.Input<string>): pulumi.Output<FunctionKeys>

Retrieve the keys associated with the given Function.

method getHostKeys

getHostKeys(): pulumi.Output<FunctionHostKeys>

Retrieve the keys associated with the Function App.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is FunctionApp

Returns true if the given object is an instance of FunctionApp. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property account

public account: Account;

Storage account where the FunctionApp’s zipBlob is uploaded to.

property appServicePlanId

public appServicePlanId: pulumi.Output<string>;

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

property appSettings

public appSettings: pulumi.Output<{[key: string]: string} | undefined>;

A key-value pair of App Settings.

property authSettings

public authSettings: pulumi.Output<FunctionAppAuthSettings>;

A authSettings block as defined below.

property clientAffinityEnabled

public clientAffinityEnabled: pulumi.Output<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property connectionStrings

public connectionStrings: pulumi.Output<FunctionAppConnectionString[]>;

An connectionString block as defined below.

property container

public container: Container;

Storage container where the FunctionApp’s zipBlob is uploaded to.

property dailyMemoryTimeQuota

public dailyMemoryTimeQuota: pulumi.Output<number | undefined>;

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. Defaults to 0.

property defaultHostname

public defaultHostname: pulumi.Output<string>;

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

property enableBuiltinLogging

public enableBuiltinLogging: pulumi.Output<boolean | undefined>;

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

property enabled

public enabled: pulumi.Output<boolean | undefined>;

Is the Function App enabled?

property endpoint

public endpoint: pulumi.Output<string>;

Root HTTP endpoint of the Function App.

property httpsOnly

public httpsOnly: pulumi.Output<boolean | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property identity

public identity: pulumi.Output<FunctionAppIdentity>;

An identity block as defined below.

property kind

public kind: pulumi.Output<string>;

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

property location

public location: pulumi.Output<string>;

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

property name

public name: pulumi.Output<string>;

Specifies the name of the Function App. Changing this forces a new resource to be created.

property osType

public osType: pulumi.Output<string | undefined>;

A string indicating the Operating System type for this function app.

property outboundIpAddresses

public outboundIpAddresses: pulumi.Output<string>;

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

property plan

public plan: Plan;

The plan this Function App runs under.

property possibleOutboundIpAddresses

public possibleOutboundIpAddresses: pulumi.Output<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 outboundIpAddresses.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the Function App.

property siteConfig

public siteConfig: pulumi.Output<FunctionAppSiteConfig>;

A siteConfig object as defined below.

property siteCredentials

public siteCredentials: pulumi.Output<FunctionAppSiteCredential[]>;

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

property storageAccountAccessKey

public storageAccountAccessKey: pulumi.Output<string>;

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

property storageAccountName

public storageAccountName: pulumi.Output<string>;

The backend storage account name which will be used by this Function App (such as the dashboard, logs).

property storageConnectionString

DEPRECATED Deprecated in favor of storage_account_name and storage_account_access_key
public storageConnectionString: pulumi.Output<string>;

The connection string to the backend storage account which will be used by this Function App (such as the dashboard, logs). Typically set to the primaryConnectionString of a storage account resource.

property tags

public tags: pulumi.Output<{[key: string]: string} | undefined>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property version

public version: pulumi.Output<string | undefined>;

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

property zipBlob

public zipBlob: Blob;

The blob containing all the code for this FunctionApp.

interface CallbackFunctionAppArgs

interface CallbackFunctionAppArgs extends CallbackFunctionArgs<C, E, R>, FunctionAppArgsBase

Base arguments for all single-Function subscription apps.

property account

account?: storageForTypesOnly.Account;

The storage account to use where the zip-file blob for the FunctionApp will be located. If not provided, a new storage account will create. It will be a ‘Standard’, ‘LRS’, ‘StorageV2’ account.

property appSettings

appSettings?: pulumi.Input<{[key: string]: any}>;

A key-value pair of App Settings.

property authSettings

authSettings?: pulumi.Input<FunctionAppAuthSettings>;

A authSettings block as defined below.

property callback

callback?: Callback<C, E, R>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<C, E, R>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property codePathOptions

codePathOptions?: pulumi.runtime.CodePathOptions;

Options to control which files and packages are included with the serialized FunctionApp code.

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<{
    name: pulumi.Input<string>;
    type: pulumi.Input<string>;
    value: pulumi.Input<string>;
}>[]>;

An connection_string block as defined below.

property container

container?: storageForTypesOnly.Container;

The container to use where the zip-file blob for the FunctionApp will be located. If not provided, the root container of the storage account will be used.

property dailyMemoryTimeQuota

dailyMemoryTimeQuota?: pulumi.Input<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. Defaults to 0.

property enableBuiltinLogging

enableBuiltinLogging?: pulumi.Input<boolean>;

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

property enabled

enabled?: pulumi.Input<boolean>;

Is the Function App enabled?

property hostSettings

hostSettings?: HostSettings;

Host configuration options.

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<FunctionAppIdentity>;

An identity block as defined below.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property location

location?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

The name of the Function App.

property nodeVersion

nodeVersion?: pulumi.Input<string>;

Controls the value of WEBSITE_NODE_DEFAULT_VERSION in appSettings. If not provided, defaults to ~12.

property osType

osType?: pulumi.Input<string>;

A string indicating the Operating System type for this function app.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

property plan

plan?: appservice.Plan;

The App Service Plan within which to create this Function App. Changing this forces a new resource to be created.

If not provided, a default “Consumption” plan will be created. See: https://docs.microsoft.com/en-us/azure/azure-functions/functions-scale#consumption-plan for more details.

property resourceGroup

resourceGroup?: core.ResourceGroup;

The resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName].

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName]. Either [resourceGroupName] or [resourceGroup] must be supplied.

property siteConfig

siteConfig?: pulumi.Input<FunctionAppSiteConfig>;

A site_config object as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property version

version?: pulumi.Input<string>;

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

interface CallbackFunctionArgs

interface CallbackFunctionArgs extends InputOutputsArgs, CallbackArgs<C, E, R>

Base arguments for all Azure Function components that are passed to MultiFunctionCallbackApp.

property callback

callback?: Callback<C, E, R>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<C, E, R>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

interface CertificateArgs

interface CertificateArgs

The set of arguments for constructing a Certificate resource.

property keyVaultSecretId

keyVaultSecretId?: pulumi.Input<string>;

The ID of the Key Vault secret. Changing this forces a new resource to be created.

property location

location?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

Specifies the name of the certificate. Changing this forces a new resource to be created.

property password

password?: pulumi.Input<string>;

The password to access the certificate’s private key. Changing this forces a new resource to be created.

property pfxBlob

pfxBlob?: pulumi.Input<string>;

The base64-encoded contents of the certificate. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

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

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

interface CertificateOrderArgs

interface CertificateOrderArgs

The set of arguments for constructing a CertificateOrder resource.

property autoRenew

autoRenew?: pulumi.Input<boolean>;

true if the certificate should be automatically renewed when it expires; otherwise, false. Defaults to true.

property csr

csr?: pulumi.Input<string>;

Last CSR that was created for this order.

property distinguishedName

distinguishedName?: pulumi.Input<string>;

The Distinguished Name for the App Service Certificate Order.

property keySize

keySize?: pulumi.Input<number>;

Certificate key size. Defaults to 2048.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. Currently the only valid value is global.

property name

name?: pulumi.Input<string>;

Specifies the name of the certificate. Changing this forces a new resource to be created.

property productType

productType?: pulumi.Input<string>;

Certificate product type, such as Standard or WildCard.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

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

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource.

property validityInYears

validityInYears?: pulumi.Input<number>;

Duration in years (must be between 1 and 3). Defaults to 1.

interface CertificateOrderState

interface CertificateOrderState

Input properties used for looking up and filtering CertificateOrder resources.

property appServiceCertificateNotRenewableReasons

appServiceCertificateNotRenewableReasons?: pulumi.Input<pulumi.Input<string>[]>;

Reasons why App Service Certificate is not renewable at the current moment.

property autoRenew

autoRenew?: pulumi.Input<boolean>;

true if the certificate should be automatically renewed when it expires; otherwise, false. Defaults to true.

property certificates

certificates?: pulumi.Input<pulumi.Input<CertificateOrderCertificate>[]>;

State of the Key Vault secret. A certificates block as defined below.

property csr

csr?: pulumi.Input<string>;

Last CSR that was created for this order.

property distinguishedName

distinguishedName?: pulumi.Input<string>;

The Distinguished Name for the App Service Certificate Order.

property domainVerificationToken

domainVerificationToken?: pulumi.Input<string>;

Domain verification token.

property expirationTime

expirationTime?: pulumi.Input<string>;

Certificate expiration time.

property intermediateThumbprint

intermediateThumbprint?: pulumi.Input<string>;

Certificate thumbprint intermediate certificate.

property isPrivateKeyExternal

isPrivateKeyExternal?: pulumi.Input<boolean>;

Whether the private key is external or not.

property keySize

keySize?: pulumi.Input<number>;

Certificate key size. Defaults to 2048.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. Currently the only valid value is global.

property name

name?: pulumi.Input<string>;

Specifies the name of the certificate. Changing this forces a new resource to be created.

property productType

productType?: pulumi.Input<string>;

Certificate product type, such as Standard or WildCard.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

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

property rootThumbprint

rootThumbprint?: pulumi.Input<string>;

Certificate thumbprint for root certificate.

property signedCertificateThumbprint

signedCertificateThumbprint?: pulumi.Input<string>;

Certificate thumbprint for signed certificate.

property status

status?: pulumi.Input<string>;

Current order status.

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource.

property validityInYears

validityInYears?: pulumi.Input<number>;

Duration in years (must be between 1 and 3). Defaults to 1.

interface CertificateState

interface CertificateState

Input properties used for looking up and filtering Certificate resources.

property expirationDate

expirationDate?: pulumi.Input<string>;

The expiration date for the certificate.

property friendlyName

friendlyName?: pulumi.Input<string>;

The friendly name of the certificate.

property hostNames

hostNames?: pulumi.Input<pulumi.Input<string>[]>;

List of host names the certificate applies to.

property issueDate

issueDate?: pulumi.Input<string>;

The issue date for the certificate.

property issuer

issuer?: pulumi.Input<string>;

The name of the certificate issuer.

property keyVaultSecretId

keyVaultSecretId?: pulumi.Input<string>;

The ID of the Key Vault secret. Changing this forces a new resource to be created.

property location

location?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

Specifies the name of the certificate. Changing this forces a new resource to be created.

property password

password?: pulumi.Input<string>;

The password to access the certificate’s private key. Changing this forces a new resource to be created.

property pfxBlob

pfxBlob?: pulumi.Input<string>;

The base64-encoded contents of the certificate. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

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

property subjectName

subjectName?: pulumi.Input<string>;

The subject name of the certificate.

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

property thumbprint

thumbprint?: pulumi.Input<string>;

The thumbprint for the certificate.

interface Context

interface Context extends Context

method done

done(err?: Error | string | null, result?: R): void

A callback function that signals to the runtime that your code has completed. If your function is synchronous, you must call context.done at the end of execution. If your function is asynchronous, you should not use this callback.

property bindingData

bindingData: {[key: string]: any};

Trigger metadata and function invocation data.

property bindingDefinitions

bindingDefinitions: BindingDefinition[];

Bindings your function uses, as defined in function.json.

property bindings

bindings: {[key: string]: any};

Input and trigger binding data, as defined in function.json. Properties on this object are dynamically generated and named based off of the “name” property in function.json.

property executionContext

executionContext: ExecutionContext;

Function execution metadata.

property invocationId

invocationId: string;

A unique GUID per function invocation.

property log

log: Logger;

Allows you to write streaming function logs. Calling directly allows you to write streaming function logs at the default trace level.

property req

req?: HttpRequest;

HTTP request object. Provided to your function when using HTTP Bindings.

property res

res?: undefined | {[key: string]: any};

HTTP response object. Provided to your function when using HTTP Bindings.

property traceContext

traceContext: TraceContext;

TraceContext information to enable distributed tracing scenarios.

interface CustomHostnameBindingArgs

interface CustomHostnameBindingArgs

The set of arguments for constructing a CustomHostnameBinding resource.

property appServiceName

appServiceName: pulumi.Input<string>;

The name of the App Service in which to add the Custom Hostname Binding. Changing this forces a new resource to be created.

property hostname

hostname: pulumi.Input<string>;

Specifies the Custom Hostname to use for the App Service, example www.example.com. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

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

property sslState

sslState?: pulumi.Input<string>;

The SSL type. Possible values are IpBasedEnabled and SniEnabled. Changing this forces a new resource to be created.

property thumbprint

thumbprint?: pulumi.Input<string>;

The SSL certificate thumbprint. Changing this forces a new resource to be created.

interface CustomHostnameBindingState

interface CustomHostnameBindingState

Input properties used for looking up and filtering CustomHostnameBinding resources.

property appServiceName

appServiceName?: pulumi.Input<string>;

The name of the App Service in which to add the Custom Hostname Binding. Changing this forces a new resource to be created.

property hostname

hostname?: pulumi.Input<string>;

Specifies the Custom Hostname to use for the App Service, example www.example.com. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

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

property sslState

sslState?: pulumi.Input<string>;

The SSL type. Possible values are IpBasedEnabled and SniEnabled. Changing this forces a new resource to be created.

property thumbprint

thumbprint?: pulumi.Input<string>;

The SSL certificate thumbprint. Changing this forces a new resource to be created.

property virtualIp

virtualIp?: pulumi.Input<string>;

The virtual IP address assigned to the hostname if IP based SSL is enabled.

type DayOfWeek

type DayOfWeek = number | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "Sunday";

If a number, it must be between 0 to 7 (inclusive). (0 and 7 both represent Sunday).

class DurableActivityFunction

class DurableActivityFunction extends Function<DurableActivityFunctionContext<TActivityInputBinding>, void, mod.Result>

Azure Durable Activity Function

constructor

new DurableActivityFunction(name: string, args: DurableActivityFunctionArgs<TActivityInputBinding>)

property appSettings

public appSettings?: pulumi.Input<{[key: string]: string}>;

Application settings required by the function.

property bindings

public bindings: pulumi.Input<BindingDefinition[]>;

An array of function binding definitions.

property callback

public callback: CallbackArgs<DurableActivityFunctionContext<TActivityInputBinding>, void, mod.Result>;

Function callback.

property name

public name: string;

Function name.

interface DurableActivityFunctionArgs

interface DurableActivityFunctionArgs extends CallbackFunctionArgs<DurableActivityFunctionContext<TActivityInputBinding>, void, mod.Result>

property activityInputName

activityInputName: keyof TActivityInputBinding;

property callback

callback?: Callback<DurableActivityFunctionContext<TActivityInputBinding>, void, mod.Result>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<DurableActivityFunctionContext<TActivityInputBinding>, void, mod.Result>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

interface DurableActivityFunctionContext

interface DurableActivityFunctionContext extends Context<mod.Result>

method done

done(err?: Error | string | null, result?: R): void

A callback function that signals to the runtime that your code has completed. If your function is synchronous, you must call context.done at the end of execution. If your function is asynchronous, you should not use this callback.

property bindingData

bindingData: {[key: string]: any};

Trigger metadata and function invocation data.

property bindingDefinitions

bindingDefinitions: BindingDefinition[];

Bindings your function uses, as defined in function.json.

property bindings

bindings: TActivityInputBinding;

property executionContext

executionContext: ExecutionContext;

Function execution metadata.

property invocationId

invocationId: string;

A unique GUID per function invocation.

property log

log: Logger;

Allows you to write streaming function logs. Calling directly allows you to write streaming function logs at the default trace level.

property req

req?: HttpRequest;

HTTP request object. Provided to your function when using HTTP Bindings.

property res

res?: undefined | {[key: string]: any};

HTTP response object. Provided to your function when using HTTP Bindings.

property traceContext

traceContext: TraceContext;

TraceContext information to enable distributed tracing scenarios.

class DurableEntityClientInputBindingSettings

 implements BindingSettings

constructor

new DurableEntityClientInputBindingSettings(name: string)

property binding

binding: pulumi.Input<InputBindingDefinition>;

property settings

settings: pulumi.Input<{[key: string]: any}>;

class DurableEntityFunction

class DurableEntityFunction extends Function<DurableEntityFunctionContext, void, void>

Azure Durable Entity Function

constructor

new DurableEntityFunction(name: string, args: DurableEntityFunctionArgs)

property appSettings

public appSettings?: pulumi.Input<{[key: string]: string}>;

Application settings required by the function.

property bindings

public bindings: pulumi.Input<BindingDefinition[]>;

An array of function binding definitions.

property callback

public callback: CallbackArgs<DurableEntityFunctionContext, void, void>;

Function callback.

property name

public name: string;

Function name.

interface DurableEntityFunctionArgs

interface DurableEntityFunctionArgs extends CallbackFunctionArgs<DurableEntityFunctionContext, void, void>

property callback

callback?: Callback<DurableEntityFunctionContext, void, void>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<DurableEntityFunctionContext, void, void>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

interface DurableEntityFunctionContext

interface DurableEntityFunctionContext extends Context<mod.Result>

method done

done(err?: Error | string | null, result?: R): void

A callback function that signals to the runtime that your code has completed. If your function is synchronous, you must call context.done at the end of execution. If your function is asynchronous, you should not use this callback.

property bindingData

bindingData: {[key: string]: any};

Trigger metadata and function invocation data.

property bindingDefinitions

bindingDefinitions: BindingDefinition[];

Bindings your function uses, as defined in function.json.

property bindings

bindings: {[key: string]: any};

Input and trigger binding data, as defined in function.json. Properties on this object are dynamically generated and named based off of the “name” property in function.json.

property df

df: any;

property executionContext

executionContext: ExecutionContext;

Function execution metadata.

property invocationId

invocationId: string;

A unique GUID per function invocation.

property log

log: Logger;

Allows you to write streaming function logs. Calling directly allows you to write streaming function logs at the default trace level.

property req

req?: HttpRequest;

HTTP request object. Provided to your function when using HTTP Bindings.

property res

res?: undefined | {[key: string]: any};

HTTP response object. Provided to your function when using HTTP Bindings.

property traceContext

traceContext: TraceContext;

TraceContext information to enable distributed tracing scenarios.

class DurableOrchestrationClientInputBindingSettings

 implements BindingSettings

constructor

new DurableOrchestrationClientInputBindingSettings(name: string)

property binding

binding: pulumi.Input<InputBindingDefinition>;

property settings

settings: pulumi.Input<{[key: string]: any}>;

class DurableOrchestratorFunction

class DurableOrchestratorFunction extends Function<DurableOrchestratorFunctionContext, void, void>

Azure Durable Orchestrator Function

constructor

new DurableOrchestratorFunction(name: string, args: DurableOrchestratorFunctionArgs)

property appSettings

public appSettings?: pulumi.Input<{[key: string]: string}>;

Application settings required by the function.

property bindings

public bindings: pulumi.Input<BindingDefinition[]>;

An array of function binding definitions.

property callback

public callback: CallbackArgs<DurableOrchestratorFunctionContext, void, void>;

Function callback.

property name

public name: string;

Function name.

interface DurableOrchestratorFunctionArgs

interface DurableOrchestratorFunctionArgs extends CallbackFunctionArgs<DurableOrchestratorFunctionContext, void, void>

property callback

callback?: Callback<DurableOrchestratorFunctionContext, void, void>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<DurableOrchestratorFunctionContext, void, void>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

interface DurableOrchestratorFunctionContext

interface DurableOrchestratorFunctionContext extends Context<mod.Result>

method done

done(err?: Error | string | null, result?: R): void

A callback function that signals to the runtime that your code has completed. If your function is synchronous, you must call context.done at the end of execution. If your function is asynchronous, you should not use this callback.

property bindingData

bindingData: {[key: string]: any};

Trigger metadata and function invocation data.

property bindingDefinitions

bindingDefinitions: BindingDefinition[];

Bindings your function uses, as defined in function.json.

property bindings

bindings: {[key: string]: any};

Input and trigger binding data, as defined in function.json. Properties on this object are dynamically generated and named based off of the “name” property in function.json.

property df

df: any;

property executionContext

executionContext: ExecutionContext;

Function execution metadata.

property invocationId

invocationId: string;

A unique GUID per function invocation.

property log

log: Logger;

Allows you to write streaming function logs. Calling directly allows you to write streaming function logs at the default trace level.

property req

req?: HttpRequest;

HTTP request object. Provided to your function when using HTTP Bindings.

property res

res?: undefined | {[key: string]: any};

HTTP response object. Provided to your function when using HTTP Bindings.

property traceContext

traceContext: TraceContext;

TraceContext information to enable distributed tracing scenarios.

interface EnvironmentArgs

interface EnvironmentArgs

The set of arguments for constructing a Environment resource.

property frontEndScaleFactor

frontEndScaleFactor?: pulumi.Input<number>;

Scale factor for front end instances. Possible values are between 5 and 15. Defaults to 15.

property internalLoadBalancingMode

internalLoadBalancingMode?: pulumi.Input<string>;

Specifies which endpoints to serve internally in the Virtual Network for the App Service Environment. Possible values are None, Web and Publishing. Defaults to None.

property name

name?: pulumi.Input<string>;

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

property pricingTier

pricingTier?: pulumi.Input<string>;

Pricing tier for the front end instances. Possible values are I1, I2 and I3. Defaults to I1.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the Resource Group where the App Service Environment exists. Defaults to the Resource Group of the Subnet (specified by subnetId).

property subnetId

subnetId: pulumi.Input<string>;

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

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource. Changing this forces a new resource to be created.

interface EnvironmentState

interface EnvironmentState

Input properties used for looking up and filtering Environment resources.

property frontEndScaleFactor

frontEndScaleFactor?: pulumi.Input<number>;

Scale factor for front end instances. Possible values are between 5 and 15. Defaults to 15.

property internalLoadBalancingMode

internalLoadBalancingMode?: pulumi.Input<string>;

Specifies which endpoints to serve internally in the Virtual Network for the App Service Environment. Possible values are None, Web and Publishing. Defaults to None.

property location

location?: pulumi.Input<string>;

The location where the App Service Environment exists.

property name

name?: pulumi.Input<string>;

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

property pricingTier

pricingTier?: pulumi.Input<string>;

Pricing tier for the front end instances. Possible values are I1, I2 and I3. Defaults to I1.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the Resource Group where the App Service Environment exists. Defaults to the Resource Group of the Subnet (specified by subnetId).

property subnetId

subnetId?: pulumi.Input<string>;

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

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource. Changing this forces a new resource to be created.

type ExtendedHttpResponse

type ExtendedHttpResponse = HttpResponse | {
    response: HttpResponse;
};

HTTP Response that may or may not contain extra output binding data. For each output binding, the callback should define a property in the response record with the property name matching the binding name. For instance, for an output binding called ‘myoutput’, the response could be ‘{ response: { status: 200, body: “My Response” }, myoutput: “My Value” }‘.

class Function

class Function

Azure Function base class.

constructor

new Function(name: string, trigger: pulumi.Input<InputBindingDefinition>, args: CallbackFunctionArgs<C, E, R>, settings?: pulumi.Input<{[key: string]: string}>)

property appSettings

public appSettings?: pulumi.Input<{[key: string]: string}>;

Application settings required by the function.

property bindings

public bindings: pulumi.Input<BindingDefinition[]>;

An array of function binding definitions.

property callback

public callback: CallbackArgs<C, E, R>;

Function callback.

property name

public name: string;

Function name.

interface FunctionAppArgs

interface FunctionAppArgs

The set of arguments for constructing a FunctionApp resource.

property appServicePlanId

appServicePlanId: pulumi.Input<string>;

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

property appSettings

appSettings?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A key-value pair of App Settings.

property authSettings

authSettings?: pulumi.Input<FunctionAppAuthSettings>;

A authSettings block as defined below.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<FunctionAppConnectionString>[]>;

An connectionString block as defined below.

property dailyMemoryTimeQuota

dailyMemoryTimeQuota?: pulumi.Input<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. Defaults to 0.

property enableBuiltinLogging

enableBuiltinLogging?: pulumi.Input<boolean>;

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

property enabled

enabled?: pulumi.Input<boolean>;

Is the Function App enabled?

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<FunctionAppIdentity>;

An identity block as defined below.

property location

location?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

Specifies the name of the Function App. Changing this forces a new resource to be created.

property osType

osType?: pulumi.Input<string>;

A string indicating the Operating System type for this function app.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the Function App.

property siteConfig

siteConfig?: pulumi.Input<FunctionAppSiteConfig>;

A siteConfig object as defined below.

property storageAccountAccessKey

storageAccountAccessKey?: pulumi.Input<string>;

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

property storageAccountName

storageAccountName?: pulumi.Input<string>;

The backend storage account name which will be used by this Function App (such as the dashboard, logs).

property storageConnectionString

DEPRECATED Deprecated in favor of storage_account_name and storage_account_access_key
storageConnectionString?: pulumi.Input<string>;

The connection string to the backend storage account which will be used by this Function App (such as the dashboard, logs). Typically set to the primaryConnectionString of a storage account resource.

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource.

property version

version?: pulumi.Input<string>;

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

interface FunctionAppSlotArgs

interface FunctionAppSlotArgs

The set of arguments for constructing a FunctionAppSlot resource.

property appServicePlanId

appServicePlanId: pulumi.Input<string>;

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

property appSettings

appSettings?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A key-value pair of App Settings.

property authSettings

authSettings?: pulumi.Input<FunctionAppSlotAuthSettings>;

An authSettings block as defined below.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<FunctionAppSlotConnectionString>[]>;

A connectionString block as defined below.

property dailyMemoryTimeQuota

dailyMemoryTimeQuota?: pulumi.Input<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. Defaults to 0.

property enableBuiltinLogging

enableBuiltinLogging?: pulumi.Input<boolean>;

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

property enabled

enabled?: pulumi.Input<boolean>;

Is the Function App enabled?

property functionAppName

functionAppName: pulumi.Input<string>;

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<FunctionAppSlotIdentity>;

An identity block as defined below.

property location

location?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

Specifies the name of the Function App. Changing this forces a new resource to be created.

property osType

osType?: pulumi.Input<string>;

A string indicating the Operating System type for this function app.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the Function App Slot.

property siteConfig

siteConfig?: pulumi.Input<FunctionAppSlotSiteConfig>;

A siteConfig object as defined below.

property storageAccountAccessKey

storageAccountAccessKey: pulumi.Input<string>;

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

property storageAccountName

storageAccountName: pulumi.Input<string>;

The backend storage account name which will be used by the Function App (such as the dashboard, logs).

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource.

property version

version?: pulumi.Input<string>;

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

interface FunctionAppSlotState

interface FunctionAppSlotState

Input properties used for looking up and filtering FunctionAppSlot resources.

property appServicePlanId

appServicePlanId?: pulumi.Input<string>;

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

property appSettings

appSettings?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A key-value pair of App Settings.

property authSettings

authSettings?: pulumi.Input<FunctionAppSlotAuthSettings>;

An authSettings block as defined below.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<FunctionAppSlotConnectionString>[]>;

A connectionString block as defined below.

property dailyMemoryTimeQuota

dailyMemoryTimeQuota?: pulumi.Input<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. Defaults to 0.

property defaultHostname

defaultHostname?: pulumi.Input<string>;

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

property enableBuiltinLogging

enableBuiltinLogging?: pulumi.Input<boolean>;

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

property enabled

enabled?: pulumi.Input<boolean>;

Is the Function App enabled?

property functionAppName

functionAppName?: pulumi.Input<string>;

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<FunctionAppSlotIdentity>;

An identity block as defined below.

property kind

kind?: pulumi.Input<string>;

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

property location

location?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

Specifies the name of the Function App. Changing this forces a new resource to be created.

property osType

osType?: pulumi.Input<string>;

A string indicating the Operating System type for this function app.

property outboundIpAddresses

outboundIpAddresses?: pulumi.Input<string>;

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

property possibleOutboundIpAddresses

possibleOutboundIpAddresses?: pulumi.Input<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 outboundIpAddresses.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the Function App Slot.

property siteConfig

siteConfig?: pulumi.Input<FunctionAppSlotSiteConfig>;

A siteConfig object as defined below.

property siteCredentials

siteCredentials?: pulumi.Input<pulumi.Input<FunctionAppSlotSiteCredential>[]>;

A siteCredential block as defined below, which contains the site-level credentials used to publish to this Function App Slot.

property storageAccountAccessKey

storageAccountAccessKey?: pulumi.Input<string>;

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

property storageAccountName

storageAccountName?: pulumi.Input<string>;

The backend storage account name which will be used by the Function App (such as the dashboard, logs).

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource.

property version

version?: pulumi.Input<string>;

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

interface FunctionAppState

interface FunctionAppState

Input properties used for looking up and filtering FunctionApp resources.

property appServicePlanId

appServicePlanId?: pulumi.Input<string>;

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

property appSettings

appSettings?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A key-value pair of App Settings.

property authSettings

authSettings?: pulumi.Input<FunctionAppAuthSettings>;

A authSettings block as defined below.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<FunctionAppConnectionString>[]>;

An connectionString block as defined below.

property dailyMemoryTimeQuota

dailyMemoryTimeQuota?: pulumi.Input<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. Defaults to 0.

property defaultHostname

defaultHostname?: pulumi.Input<string>;

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

property enableBuiltinLogging

enableBuiltinLogging?: pulumi.Input<boolean>;

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

property enabled

enabled?: pulumi.Input<boolean>;

Is the Function App enabled?

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<FunctionAppIdentity>;

An identity block as defined below.

property kind

kind?: pulumi.Input<string>;

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

property location

location?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

Specifies the name of the Function App. Changing this forces a new resource to be created.

property osType

osType?: pulumi.Input<string>;

A string indicating the Operating System type for this function app.

property outboundIpAddresses

outboundIpAddresses?: pulumi.Input<string>;

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

property possibleOutboundIpAddresses

possibleOutboundIpAddresses?: pulumi.Input<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 outboundIpAddresses.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the Function App.

property siteConfig

siteConfig?: pulumi.Input<FunctionAppSiteConfig>;

A siteConfig object as defined below.

property siteCredentials

siteCredentials?: pulumi.Input<pulumi.Input<FunctionAppSiteCredential>[]>;

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

property storageAccountAccessKey

storageAccountAccessKey?: pulumi.Input<string>;

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

property storageAccountName

storageAccountName?: pulumi.Input<string>;

The backend storage account name which will be used by this Function App (such as the dashboard, logs).

property storageConnectionString

DEPRECATED Deprecated in favor of storage_account_name and storage_account_access_key
storageConnectionString?: pulumi.Input<string>;

The connection string to the backend storage account which will be used by this Function App (such as the dashboard, logs). Typically set to the primaryConnectionString of a storage account resource.

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource.

property version

version?: pulumi.Input<string>;

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

type FunctionDefaultResponse

type FunctionDefaultResponse = void | Record<string, any>;

Type alias for a response coming from an Azure Function callback, which applies to most Function types (HTTP being a notable exception). ‘void’ is returned when a Function has no output bindings. For each output binding, the callback should define a property in the response record with the property name matching the binding name. For instance, for an output binding called ‘myoutput’, the response could be ‘{ myoutput: “My Value” }‘.

interface FunctionHostKeys

interface FunctionHostKeys

Keys associated with a Function App.

property functionKeys

functionKeys: FunctionKeys;

Default function keys.

property masterKey

masterKey: string;

Master key.

property systemKeys

systemKeys: {[key: string]: string};

A dictionary of system keys, e.g. for Durable Functions or Event Grid.

interface FunctionKeys

interface FunctionKeys

Keys associated with a single Function.

property default

default: string;

interface GetAppServiceArgs

interface GetAppServiceArgs

A collection of arguments for invoking getAppService.

property name

name: string;

The name of the App Service.

property resourceGroupName

resourceGroupName: string;

The Name of the Resource Group where the App Service exists.

interface GetAppServiceEnvironmentArgs

interface GetAppServiceEnvironmentArgs

A collection of arguments for invoking getAppServiceEnvironment.

property name

name: string;

The name of the App Service Environment.

property resourceGroupName

resourceGroupName: string;

The Name of the Resource Group where the App Service Environment exists.

interface GetAppServiceEnvironmentResult

interface GetAppServiceEnvironmentResult

A collection of values returned by getAppServiceEnvironment.

property frontEndScaleFactor

frontEndScaleFactor: number;

The number of app instances per App Service Environment Front End

property id

id: string;

The provider-assigned unique ID for this managed resource.

property location

location: string;

The Azure location where the App Service Environment exists

property name

name: string;

property pricingTier

pricingTier: string;

The Pricing Tier (Isolated SKU) of the App Service Environment.

property resourceGroupName

resourceGroupName: string;

property tags

tags: {[key: string]: string};

A mapping of tags assigned to the resource.

interface GetAppServicePlanArgs

interface GetAppServicePlanArgs

A collection of arguments for invoking getAppServicePlan.

property name

name: string;

The name of the App Service Plan.

property resourceGroupName

resourceGroupName: string;

The Name of the Resource Group where the App Service Plan exists.

interface GetAppServicePlanResult

interface GetAppServicePlanResult

A collection of values returned by getAppServicePlan.

property appServiceEnvironmentId

appServiceEnvironmentId: string;

The ID of the App Service Environment where the App Service Plan is located.

property id

id: string;

The provider-assigned unique ID for this managed resource.

property isXenon

isXenon: boolean;

A flag that indicates if it’s a xenon plan (support for Windows Container)

property kind

kind: string;

The Operating System type of the App Service Plan

property location

location: string;

The Azure location where the App Service Plan exists

property maximumElasticWorkerCount

maximumElasticWorkerCount: number;

The maximum number of total workers allowed for this ElasticScaleEnabled App Service Plan.

property maximumNumberOfWorkers

maximumNumberOfWorkers: number;

The maximum number of workers supported with the App Service Plan’s sku.

property name

name: string;

property perSiteScaling

perSiteScaling: boolean;

Can Apps assigned to this App Service Plan be scaled independently?

property reserved

reserved: boolean;

Is this App Service Plan Reserved?

property resourceGroupName

resourceGroupName: string;

property sku

sku: GetAppServicePlanSku;

A sku block as documented below.

property tags

tags: {[key: string]: string};

A mapping of tags assigned to the resource.

interface GetAppServiceResult

interface GetAppServiceResult

A collection of values returned by getAppService.

property appServicePlanId

appServicePlanId: string;

The ID of the App Service Plan within which the App Service exists.

property appSettings

appSettings: {[key: string]: string};

A key-value pair of App Settings for the App Service.

property clientAffinityEnabled

clientAffinityEnabled: boolean;

Does the App Service send session affinity cookies, which route client requests in the same session to the same instance?

property clientCertEnabled

clientCertEnabled: boolean;

Does the App Service require client certificates for incoming requests?

property connectionStrings

connectionStrings: GetAppServiceConnectionString[];

An connectionString block as defined below.

property defaultSiteHostname

defaultSiteHostname: string;

The Default Hostname associated with the App Service - such as mysite.azurewebsites.net

property enabled

enabled: boolean;

Is the App Service Enabled?

property httpsOnly

httpsOnly: boolean;

Can the App Service only be accessed via HTTPS?

property id

id: string;

The provider-assigned unique ID for this managed resource.

property location

location: string;

The Azure location where the App Service exists.

property name

name: string;

The name for this IP Restriction.

property outboundIpAddresses

outboundIpAddresses: string;

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

property possibleOutboundIpAddresses

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 outboundIpAddresses.

property resourceGroupName

resourceGroupName: string;

property siteConfigs

siteConfigs: GetAppServiceSiteConfig[];

A siteConfig block as defined below.

property siteCredentials

siteCredentials: GetAppServiceSiteCredential[];

property sourceControls

sourceControls: GetAppServiceSourceControl[];

property tags

tags: {[key: string]: string};

A mapping of tags to assign to the resource.

interface GetCertificateArgs

interface GetCertificateArgs

A collection of arguments for invoking getCertificate.

property name

name: string;

Specifies the name of the certificate.

property resourceGroupName

resourceGroupName: string;

The name of the resource group in which to create the certificate.

property tags

tags?: undefined | {[key: string]: string};

interface GetCertificateOrderArgs

interface GetCertificateOrderArgs

A collection of arguments for invoking getCertificateOrder.

property name

name: string;

The name of the App Service.

property resourceGroupName

resourceGroupName: string;

The Name of the Resource Group where the App Service exists.

interface GetCertificateOrderResult

interface GetCertificateOrderResult

A collection of values returned by getCertificateOrder.

property appServiceCertificateNotRenewableReasons

appServiceCertificateNotRenewableReasons: string[];

Reasons why App Service Certificate is not renewable at the current moment.

property autoRenew

autoRenew: boolean;

true if the certificate should be automatically renewed when it expires; otherwise, false.

property certificates

certificates: GetCertificateOrderCertificate[];

State of the Key Vault secret. A certificates block as defined below.

property csr

csr: string;

Last CSR that was created for this order.

property distinguishedName

distinguishedName: string;

The Distinguished Name for the App Service Certificate Order.

property domainVerificationToken

domainVerificationToken: string;

Domain verification token.

property expirationTime

expirationTime: string;

Certificate expiration time.

property id

id: string;

The provider-assigned unique ID for this managed resource.

property intermediateThumbprint

intermediateThumbprint: string;

Certificate thumbprint intermediate certificate.

property isPrivateKeyExternal

isPrivateKeyExternal: boolean;

Whether the private key is external or not.

property keySize

keySize: number;

Certificate key size.

property location

location: string;

The Azure location where the App Service exists.

property name

name: string;

property productType

productType: string;

Certificate product type, such as Standard or WildCard.

property resourceGroupName

resourceGroupName: string;

property rootThumbprint

rootThumbprint: string;

Certificate thumbprint for root certificate.

property signedCertificateThumbprint

signedCertificateThumbprint: string;

Certificate thumbprint for signed certificate.

property status

status: string;

Current order status.

property tags

tags: {[key: string]: string};

A mapping of tags to assign to the resource.

property validityInYears

validityInYears: number;

Duration in years (must be between 1 and 3).

interface GetCertificateResult

interface GetCertificateResult

A collection of values returned by getCertificate.

property expirationDate

expirationDate: string;

The expiration date for the certificate.

property friendlyName

friendlyName: string;

The friendly name of the certificate.

property hostNames

hostNames: string[];

List of host names the certificate applies to.

property id

id: string;

The provider-assigned unique ID for this managed resource.

property issueDate

issueDate: string;

The issue date for the certificate.

property issuer

issuer: string;

The name of the certificate issuer.

property location

location: string;

property name

name: string;

property resourceGroupName

resourceGroupName: string;

property subjectName

subjectName: string;

The subject name of the certificate.

property tags

tags?: undefined | {[key: string]: string};

property thumbprint

thumbprint: string;

The thumbprint for the certificate.

interface GetFunctionAppArgs

interface GetFunctionAppArgs

A collection of arguments for invoking getFunctionApp.

property name

name: string;

The name of the Function App resource.

property resourceGroupName

resourceGroupName: string;

The name of the Resource Group where the Function App exists.

property tags

tags?: undefined | {[key: string]: string};

interface GetFunctionAppResult

interface GetFunctionAppResult

A collection of values returned by getFunctionApp.

property appServicePlanId

appServicePlanId: string;

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

property appSettings

appSettings: {[key: string]: string};

A key-value pair of App Settings.

property connectionStrings

connectionStrings: GetFunctionAppConnectionString[];

An connectionString block as defined below.

property defaultHostname

defaultHostname: string;

The default hostname associated with the Function App.

property enabled

enabled: boolean;

Is the Function App enabled?

property id

id: string;

The provider-assigned unique ID for this managed resource.

property location

location: string;

property name

name: string;

The name of the Connection String.

property osType

osType: string;

A string indicating the Operating System type for this function app.

property outboundIpAddresses

outboundIpAddresses: string;

A comma separated list of outbound IP addresses.

property possibleOutboundIpAddresses

possibleOutboundIpAddresses: string;

A comma separated list of outbound IP addresses, not all of which are necessarily in use. Superset of outboundIpAddresses.

property resourceGroupName

resourceGroupName: string;

property siteCredentials

siteCredentials: GetFunctionAppSiteCredential[];

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

property tags

tags?: undefined | {[key: string]: string};

interface HostSettings

interface HostSettings

The host.json metadata file contains global configuration options that affect all functions for a function app. These values can be provided here, or defaults will be used in their place.

For more details see https://docs.microsoft.com/en-us/azure/azure-functions/functions-host-json

property aggregator

aggregator?: undefined | {
    batchSize: number;
    flushTimeout: string;
};

Specifies how many function invocations are aggregated when calculating metrics for Application Insights.

See https://docs.microsoft.com/en-us/azure/azure-functions/functions-host-json#aggregator for more details.

property extensions

extensions?: undefined | {
    http?: appservice.HttpHostExtensions;
    queues?: storageForTypesOnly.QueueHostExtensions;
    serviceBus?: eventhubForTypesOnly.ServiceBusHostExtensions;
};

Extension-specific configuration options.

property functionTimeout

functionTimeout?: undefined | string;

Indicates the timeout duration for all functions. In a serverless Consumption plan, the valid range is from 1 second to 10 minutes, and the default value is 5 minutes. In an App Service plan, there is no overall limit and the default depends on the runtime version. In version 2.x, the default value for an App Service plan is 30 minutes.

property healthMonitor

healthMonitor?: undefined | {
    counterThreshold: number;
    enabled: boolean;
    healthCheckInterval: string;
    healthCheckThreshold: number;
    healthCheckWindow: string;
};

Configuration settings for host-health-monitor.

property logging

logging?: undefined | {
    applicationInsights: {
        samplingSettings: {
            isEnabled: boolean;
            maxTelemetryItemsPerSecond: number;
        };
    };
    fileLoggingMode: "never" | "only" | "debugOnly";
    logLevel: {
        default: string;
    };
};

Controls the logging behaviors of the function app, including Application Insights.

property singleton

singleton?: undefined | {
    listenerLockPeriod: string;
    listenerLockRecoveryPollingInterval: string;
    lockAcquisitionPollingInterval: string;
    lockAcquisitionTimeout: string;
    lockPeriod: string;
};

Configuration settings for Singleton lock behavior. For more information, see GitHub-issue about singleton support.

class HttpEventSubscription

class HttpEventSubscription extends EventSubscription<Context<HttpResponse>, HttpRequest, ExtendedHttpResponse>

An Azure Function exposed via an HTTP endpoint that is implemented on top of a JavaScript/TypeScript callback function.

constructor

new HttpEventSubscription(name: string, args: HttpEventSubscriptionArgs, opts: CustomResourceOptions)

method getData

protected getData(): Promise<TData>

Retrieves the data produces by [initialize]. The data is immediately available in a derived class’s constructor after the super(...) call to ComponentResource.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method initialize

protected initialize(args: Inputs): Promise<TData>

Can be overridden by a subclass to asynchronously initialize data for this Component automatically when constructed. The data will be available immediately for subclass constructors to use. To access the data use .getData.

method isInstance

static isInstance(obj: any): obj is ComponentResource

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

method registerOutputs

protected registerOutputs(outputs?: Inputs | Promise<Inputs> | Output<Inputs>): void

registerOutputs registers synthetic outputs that a component has initialized, usually by allocating other child sub-resources and propagating their resulting property values.

ComponentResources can call this at the end of their constructor to indicate that they are done creating child resources. This is not strictly necessary as this will automatically be called after the initialize method completes.

property functionApp

public functionApp: CallbackFunctionApp<Context<HttpResponse>, HttpRequest, ExtendedHttpResponse>;

property url

public url: pulumi.Output<string>;

Endpoint where this FunctionApp can be invoked.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

interface HttpEventSubscriptionArgs

interface HttpEventSubscriptionArgs extends HttpFunctionArgs, CallbackFunctionAppArgs<Context<HttpResponse>, HttpRequest, ExtendedHttpResponse>

property account

account?: storageForTypesOnly.Account;

The storage account to use where the zip-file blob for the FunctionApp will be located. If not provided, a new storage account will create. It will be a ‘Standard’, ‘LRS’, ‘StorageV2’ account.

property appSettings

appSettings?: pulumi.Input<{[key: string]: any}>;

A key-value pair of App Settings.

property authSettings

authSettings?: pulumi.Input<FunctionAppAuthSettings>;

A authSettings block as defined below.

property callback

callback?: Callback<Context<HttpResponse>, HttpRequest, ExtendedHttpResponse>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<Context<HttpResponse>, HttpRequest, ExtendedHttpResponse>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property codePathOptions

codePathOptions?: pulumi.runtime.CodePathOptions;

Options to control which files and packages are included with the serialized FunctionApp code.

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<{
    name: pulumi.Input<string>;
    type: pulumi.Input<string>;
    value: pulumi.Input<string>;
}>[]>;

An connection_string block as defined below.

property container

container?: storageForTypesOnly.Container;

The container to use where the zip-file blob for the FunctionApp will be located. If not provided, the root container of the storage account will be used.

property dailyMemoryTimeQuota

dailyMemoryTimeQuota?: pulumi.Input<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. Defaults to 0.

property enableBuiltinLogging

enableBuiltinLogging?: pulumi.Input<boolean>;

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

property enabled

enabled?: pulumi.Input<boolean>;

Is the Function App enabled?

property hostSettings

hostSettings?: HttpHostSettings;

Host settings specific to the HTTP plugin. These values can be provided here, or defaults will be used in their place.

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<FunctionAppIdentity>;

An identity block as defined below.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property location

location?: pulumi.Input<string>;

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

property methods

methods?: pulumi.Input<pulumi.Input<string>[]>;

An array of the HTTP methods to which the function responds. If not specified, the function responds to all HTTP methods.

property name

name?: pulumi.Input<string>;

The name of the Function App.

property nodeVersion

nodeVersion?: pulumi.Input<string>;

Controls the value of WEBSITE_NODE_DEFAULT_VERSION in appSettings. If not provided, defaults to ~12.

property osType

osType?: pulumi.Input<string>;

A string indicating the Operating System type for this function app.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

property plan

plan?: appservice.Plan;

The App Service Plan within which to create this Function App. Changing this forces a new resource to be created.

If not provided, a default “Consumption” plan will be created. See: https://docs.microsoft.com/en-us/azure/azure-functions/functions-scale#consumption-plan for more details.

property resourceGroup

resourceGroup?: core.ResourceGroup;

The resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName].

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName]. Either [resourceGroupName] or [resourceGroup] must be supplied.

property route

route?: pulumi.Input<string>;

Defines the route template, controlling to which request URLs your function responds. The default value if none is provided is .

property siteConfig

siteConfig?: pulumi.Input<FunctionAppSiteConfig>;

A site_config object as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property version

version?: pulumi.Input<string>;

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

class HttpFunction

class HttpFunction extends Function<Context<HttpResponse>, HttpRequest, ExtendedHttpResponse>

Azure Function triggered by HTTP requests.

constructor

new HttpFunction(name: string, args: HttpFunctionArgs)

property appSettings

public appSettings?: pulumi.Input<{[key: string]: string}>;

Application settings required by the function.

property bindings

public bindings: pulumi.Input<BindingDefinition[]>;

An array of function binding definitions.

property callback

public callback: CallbackArgs<Context<HttpResponse>, HttpRequest, ExtendedHttpResponse>;

Function callback.

property name

public name: string;

Function name.

interface HttpFunctionArgs

interface HttpFunctionArgs extends CallbackFunctionArgs<Context<HttpResponse>, HttpRequest, ExtendedHttpResponse>

property callback

callback?: Callback<Context<HttpResponse>, HttpRequest, ExtendedHttpResponse>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<Context<HttpResponse>, HttpRequest, ExtendedHttpResponse>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property methods

methods?: pulumi.Input<pulumi.Input<string>[]>;

An array of the HTTP methods to which the function responds. If not specified, the function responds to all HTTP methods.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

property route

route?: pulumi.Input<string>;

Defines the route template, controlling to which request URLs your function responds. The default value if none is provided is .

interface HttpHostExtensions

interface HttpHostExtensions

Host settings specific to the HTTP plugin.

For more details see https://docs.microsoft.com/en-us/azure/azure-functions/functions-host-json#http

property dynamicThrottlesEnabled

dynamicThrottlesEnabled?: undefined | false | true;

When enabled, this setting causes the request processing pipeline to periodically check system performance counters like connections/threads/processes/memory/cpu/etc. and if any of those counters are over a built-in high threshold (80%), requests will be rejected with a 429 “Too Busy” response until the counter(s) return to normal levels.

property maxConcurrentRequests

maxConcurrentRequests?: undefined | number;

The maximum number of http functions that will be executed in parallel.

property maxOutstandingRequests

maxOutstandingRequests?: undefined | number;

The maximum number of outstanding requests that are held at any given time.

property routePrefix

routePrefix?: undefined | string;

The route prefix that applies to all routes. Use an empty string to remove the default prefix.

interface HttpHostSettings

interface HttpHostSettings extends HostSettings

property aggregator

aggregator?: undefined | {
    batchSize: number;
    flushTimeout: string;
};

Specifies how many function invocations are aggregated when calculating metrics for Application Insights.

See https://docs.microsoft.com/en-us/azure/azure-functions/functions-host-json#aggregator for more details.

property extensions

extensions?: undefined | {
    http: HttpHostExtensions;
};

property functionTimeout

functionTimeout?: undefined | string;

Indicates the timeout duration for all functions. In a serverless Consumption plan, the valid range is from 1 second to 10 minutes, and the default value is 5 minutes. In an App Service plan, there is no overall limit and the default depends on the runtime version. In version 2.x, the default value for an App Service plan is 30 minutes.

property healthMonitor

healthMonitor?: undefined | {
    counterThreshold: number;
    enabled: boolean;
    healthCheckInterval: string;
    healthCheckThreshold: number;
    healthCheckWindow: string;
};

Configuration settings for host-health-monitor.

property logging

logging?: undefined | {
    applicationInsights: {
        samplingSettings: {
            isEnabled: boolean;
            maxTelemetryItemsPerSecond: number;
        };
    };
    fileLoggingMode: "never" | "only" | "debugOnly";
    logLevel: {
        default: string;
    };
};

Controls the logging behaviors of the function app, including Application Insights.

property singleton

singleton?: undefined | {
    listenerLockPeriod: string;
    listenerLockRecoveryPollingInterval: string;
    lockAcquisitionPollingInterval: string;
    lockAcquisitionTimeout: string;
    lockPeriod: string;
};

Configuration settings for Singleton lock behavior. For more information, see GitHub-issue about singleton support.

type HttpRequest

type HttpRequest = HttpRequest;

HTTP request object. Provided to your function when using HttpEventSubscription.

type HttpResponse

type HttpResponse = HttpResponse;

Represents an HTTP response including the status code and data.

interface HybridConnectionArgs

interface HybridConnectionArgs

The set of arguments for constructing a HybridConnection resource.

property appServiceName

appServiceName: pulumi.Input<string>;

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

property hostname

hostname: pulumi.Input<string>;

The hostname of the endpoint.

property port

port: pulumi.Input<number>;

The port of the endpoint.

property relayId

relayId: pulumi.Input<string>;

The Resource ID of Service Bus relay. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

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

property sendKeyName

sendKeyName?: pulumi.Input<string>;

The name of the Service Bus key.

interface HybridConnectionState

interface HybridConnectionState

Input properties used for looking up and filtering HybridConnection resources.

property appServiceName

appServiceName?: pulumi.Input<string>;

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

property hostname

hostname?: pulumi.Input<string>;

The hostname of the endpoint.

property namespaceName

namespaceName?: pulumi.Input<string>;

The name of the Relay Namespace.

property port

port?: pulumi.Input<number>;

The port of the endpoint.

property relayId

relayId?: pulumi.Input<string>;

The Resource ID of Service Bus relay. Changing this forces a new resource to be created.

property relayName

relayName?: pulumi.Input<string>;

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

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

property sendKeyName

sendKeyName?: pulumi.Input<string>;

The name of the Service Bus key.

property sendKeyValue

sendKeyValue?: pulumi.Input<string>;

The value of the Service Bus Primary Access key.

property serviceBusNamespace

serviceBusNamespace?: pulumi.Input<string>;

The name of the Service Bus namespace.

property serviceBusSuffix

serviceBusSuffix?: pulumi.Input<string>;

The suffix for the service bus endpoint.

interface InputBindingDefinition

interface InputBindingDefinition extends BindingDefinition

Base interface for input bindings.

property direction

direction: "in";

The direction of the binding. Must be ‘in’ for an input binding.

property name

name: string;

The name of your binding, as defined in function.json.

property type

type: string;

The type of your binding, as defined in function.json.

type InputBindingSettings

type InputBindingSettings = BindingSettings<InputBindingDefinition>;

interface InputOutputsArgs

interface InputOutputsArgs

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

type Kind

type Kind = "App" | "elastic" | "FunctionApp" | "Linux" | "Windows" | "xenon";

type Month

type Month = number | "January" | "February" | "March" | "April" | "May" | "June" | "July" | "August" | "September" | "October" | "November" | "December";

If a number, it must be between 1 to 12 (inclusive).

class MultiCallbackFunctionApp

class MultiCallbackFunctionApp extends PackagedFunctionApp

A MultiCallbackFunctionApp is a component that instantiates a azure.appservice.FunctionApp and all the required dependencies out of multiple actual JavaScript functions. At least 1 function is required. The function instances will be analyzed and packaged up (including dependencies) into a form that can be used by Azure Functions. See https://github.com/pulumi/docs/blob/master/reference/serializing-functions.md for additional details on this process.

constructor

new MultiCallbackFunctionApp(name: string, args: MultiCallbackFunctionAppArgs, opts: ComponentResourceOptions)

method getData

protected getData(): Promise<TData>

Retrieves the data produces by [initialize]. The data is immediately available in a derived class’s constructor after the super(...) call to ComponentResource.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method initialize

protected initialize(args: Inputs): Promise<TData>

Can be overridden by a subclass to asynchronously initialize data for this Component automatically when constructed. The data will be available immediately for subclass constructors to use. To access the data use .getData.

method isInstance

static isInstance(obj: any): obj is ComponentResource

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

method registerOutputs

protected registerOutputs(outputs?: Inputs | Promise<Inputs> | Output<Inputs>): void

registerOutputs registers synthetic outputs that a component has initialized, usually by allocating other child sub-resources and propagating their resulting property values.

ComponentResources can call this at the end of their constructor to indicate that they are done creating child resources. This is not strictly necessary as this will automatically be called after the initialize method completes.

property account

public account: Account;

Storage account where the FunctionApp’s zipbBlob is uploaded to.

property container

public container: Container;

Storage container where the FunctionApp’s zipbBlob is uploaded to.

property endpoint

public endpoint: pulumi.Output<string>;

Root HTTP endpoint of the Function App.

property functionApp

public functionApp: FunctionApp;

The Function App which contains the functions from the archive.

property plan

public plan: Plan;

The plan this Function App runs under.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zipBlob

public zipBlob: Blob;

The blob containing all the code for this FunctionApp.

interface MultiCallbackFunctionAppArgs

interface MultiCallbackFunctionAppArgs extends FunctionAppArgsBase

Arguments to create a Function App component with multiple callback functions in it.

property account

account?: storageForTypesOnly.Account;

The storage account to use where the zip-file blob for the FunctionApp will be located. If not provided, a new storage account will create. It will be a ‘Standard’, ‘LRS’, ‘StorageV2’ account.

property appSettings

appSettings?: pulumi.Input<{[key: string]: any}>;

A key-value pair of App Settings.

property authSettings

authSettings?: pulumi.Input<FunctionAppAuthSettings>;

A authSettings block as defined below.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property codePathOptions

codePathOptions?: pulumi.runtime.CodePathOptions;

Options to control which files and packages are included with the serialized FunctionApp code.

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<{
    name: pulumi.Input<string>;
    type: pulumi.Input<string>;
    value: pulumi.Input<string>;
}>[]>;

An connection_string block as defined below.

property container

container?: storageForTypesOnly.Container;

The container to use where the zip-file blob for the FunctionApp will be located. If not provided, the root container of the storage account will be used.

property dailyMemoryTimeQuota

dailyMemoryTimeQuota?: pulumi.Input<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. Defaults to 0.

property enableBuiltinLogging

enableBuiltinLogging?: pulumi.Input<boolean>;

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

property enabled

enabled?: pulumi.Input<boolean>;

Is the Function App enabled?

property functions

functions: Function<any, any, any>[];

The functions to deploy as parts of this application. At least 1 function is required.

property hostSettings

hostSettings?: HostSettings;

Host configuration options.

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<FunctionAppIdentity>;

An identity block as defined below.

property location

location?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

The name of the Function App.

property nodeVersion

nodeVersion?: pulumi.Input<string>;

Controls the value of WEBSITE_NODE_DEFAULT_VERSION in appSettings. If not provided, defaults to ~12.

property osType

osType?: pulumi.Input<string>;

A string indicating the Operating System type for this function app.

property plan

plan?: appservice.Plan;

The App Service Plan within which to create this Function App. Changing this forces a new resource to be created.

If not provided, a default “Consumption” plan will be created. See: https://docs.microsoft.com/en-us/azure/azure-functions/functions-scale#consumption-plan for more details.

property resourceGroup

resourceGroup?: core.ResourceGroup;

The resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName].

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName]. Either [resourceGroupName] or [resourceGroup] must be supplied.

property siteConfig

siteConfig?: pulumi.Input<FunctionAppSiteConfig>;

A site_config object as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property version

version?: pulumi.Input<string>;

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

interface OutputBindingDefinition

interface OutputBindingDefinition extends BindingDefinition

Base interface for output bindings.

property direction

direction: "out";

The direction of the binding. Must be ‘out’ for an output binding.

property name

name: string;

The name of your binding, as defined in function.json.

property type

type: string;

The type of your binding, as defined in function.json.

type OutputBindingSettings

type OutputBindingSettings = BindingSettings<OutputBindingDefinition>;

interface PlanArgs

interface PlanArgs

The set of arguments for constructing a Plan resource.

property appServiceEnvironmentId

appServiceEnvironmentId?: pulumi.Input<string>;

The ID of the App Service Environment where the App Service Plan should be located. Changing forces a new resource to be created.

property isXenon

isXenon?: pulumi.Input<boolean>;

property kind

kind?: pulumi.Input<string | Kind>;

The kind of the App Service Plan to create. Possible values are Windows (also available as App), Linux, elastic (for Premium Consumption) and FunctionApp (for a Consumption Plan). Defaults to Windows. Changing this forces a new resource to be created.

property location

location?: pulumi.Input<string>;

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

property maximumElasticWorkerCount

maximumElasticWorkerCount?: pulumi.Input<number>;

The maximum number of total workers allowed for this ElasticScaleEnabled App Service Plan.

property name

name?: pulumi.Input<string>;

Specifies the name of the App Service Plan component. Changing this forces a new resource to be created.

property perSiteScaling

perSiteScaling?: pulumi.Input<boolean>;

Can Apps assigned to this App Service Plan be scaled independently? If set to false apps assigned to this plan will scale to all instances of the plan. Defaults to false.

property reserved

reserved?: pulumi.Input<boolean>;

Is this App Service Plan Reserved. Defaults to false.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the App Service Plan component.

property sku

sku: pulumi.Input<PlanSku>;

A sku block as documented below.

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource.

interface PlanState

interface PlanState

Input properties used for looking up and filtering Plan resources.

property appServiceEnvironmentId

appServiceEnvironmentId?: pulumi.Input<string>;

The ID of the App Service Environment where the App Service Plan should be located. Changing forces a new resource to be created.

property isXenon

isXenon?: pulumi.Input<boolean>;

property kind

kind?: pulumi.Input<string | Kind>;

The kind of the App Service Plan to create. Possible values are Windows (also available as App), Linux, elastic (for Premium Consumption) and FunctionApp (for a Consumption Plan). Defaults to Windows. Changing this forces a new resource to be created.

property location

location?: pulumi.Input<string>;

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

property maximumElasticWorkerCount

maximumElasticWorkerCount?: pulumi.Input<number>;

The maximum number of total workers allowed for this ElasticScaleEnabled App Service Plan.

property maximumNumberOfWorkers

maximumNumberOfWorkers?: pulumi.Input<number>;

The maximum number of workers supported with the App Service Plan’s sku.

property name

name?: pulumi.Input<string>;

Specifies the name of the App Service Plan component. Changing this forces a new resource to be created.

property perSiteScaling

perSiteScaling?: pulumi.Input<boolean>;

Can Apps assigned to this App Service Plan be scaled independently? If set to false apps assigned to this plan will scale to all instances of the plan. Defaults to false.

property reserved

reserved?: pulumi.Input<boolean>;

Is this App Service Plan Reserved. Defaults to false.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the App Service Plan component.

property sku

sku?: pulumi.Input<PlanSku>;

A sku block as documented below.

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource.

type Result

type Result = string | Buffer | ArrayBufferView | number | object | void;

An object containing output binding data. This value will be passed to JSON.stringify unless it is a string, Buffer, ArrayBufferView, or number.

void can be specified as the Result type indicating that no value need be provided.

interface ScheduleArgs

interface ScheduleArgs

property dayOfMonth

dayOfMonth?: undefined | number;

1 to 31. Leave undefined to indicate no specific value.

property dayOfWeek

dayOfWeek?: DayOfWeek;

Day of the week to perform the scheduled action on. Leave undefined to indicate no specific value.

property hour

hour?: undefined | number;

0 to 23. Leave undefined to indicate no specific value. All times UTC

property minute

minute?: undefined | number;

0 to 59. Leave undefined to indicate no specific value.

property month

month?: Month;

Month of the year to perform the scheduled action on. Leave undefined to indicate no specific value.

property second

second?: undefined | number;

0 to 59. Leave undefined to indicate no specific value.

interface SlotArgs

interface SlotArgs

The set of arguments for constructing a Slot resource.

property appServiceName

appServiceName: pulumi.Input<string>;

The name of the App Service within which to create the App Service Slot. Changing this forces a new resource to be created.

property appServicePlanId

appServicePlanId: pulumi.Input<string>;

The ID of the App Service Plan within which to create this App Service Slot. Changing this forces a new resource to be created.

property appSettings

appSettings?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A key-value pair of App Settings.

property authSettings

authSettings?: pulumi.Input<SlotAuthSettings>;

A authSettings block as defined below.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the App Service Slot send session affinity cookies, which route client requests in the same session to the same instance?

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<SlotConnectionString>[]>;

An connectionString block as defined below.

property enabled

enabled?: pulumi.Input<boolean>;

Is the App Service Slot Enabled?

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<SlotIdentity>;

A Managed Service Identity block as defined below.

property location

location?: pulumi.Input<string>;

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

property logs

logs?: pulumi.Input<SlotLogs>;

property name

name?: pulumi.Input<string>;

Specifies the name of the App Service Slot component. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the App Service Slot component.

property siteConfig

siteConfig?: pulumi.Input<SlotSiteConfig>;

A siteConfig object as defined below.

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource.

interface SlotState

interface SlotState

Input properties used for looking up and filtering Slot resources.

property appServiceName

appServiceName?: pulumi.Input<string>;

The name of the App Service within which to create the App Service Slot. Changing this forces a new resource to be created.

property appServicePlanId

appServicePlanId?: pulumi.Input<string>;

The ID of the App Service Plan within which to create this App Service Slot. Changing this forces a new resource to be created.

property appSettings

appSettings?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A key-value pair of App Settings.

property authSettings

authSettings?: pulumi.Input<SlotAuthSettings>;

A authSettings block as defined below.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the App Service Slot send session affinity cookies, which route client requests in the same session to the same instance?

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<SlotConnectionString>[]>;

An connectionString block as defined below.

property defaultSiteHostname

defaultSiteHostname?: pulumi.Input<string>;

The Default Hostname associated with the App Service Slot - such as mysite.azurewebsites.net

property enabled

enabled?: pulumi.Input<boolean>;

Is the App Service Slot Enabled?

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<SlotIdentity>;

A Managed Service Identity block as defined below.

property location

location?: pulumi.Input<string>;

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

property logs

logs?: pulumi.Input<SlotLogs>;

property name

name?: pulumi.Input<string>;

Specifies the name of the App Service Slot component. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the App Service Slot component.

property siteConfig

siteConfig?: pulumi.Input<SlotSiteConfig>;

A siteConfig object as defined below.

property siteCredentials

siteCredentials?: pulumi.Input<pulumi.Input<SlotSiteCredential>[]>;

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

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of tags to assign to the resource.

interface SourceCodeTokenArgs

interface SourceCodeTokenArgs

The set of arguments for constructing a SourceCodeToken resource.

property token

token: pulumi.Input<string>;

The OAuth access token.

property tokenSecret

tokenSecret?: pulumi.Input<string>;

The OAuth access token secret.

property type

type: pulumi.Input<string>;

The source control type. Possible values are BitBucket, Dropbox, GitHub and OneDrive.

interface SourceCodeTokenState

interface SourceCodeTokenState

Input properties used for looking up and filtering SourceCodeToken resources.

property token

token?: pulumi.Input<string>;

The OAuth access token.

property tokenSecret

tokenSecret?: pulumi.Input<string>;

The OAuth access token secret.

property type

type?: pulumi.Input<string>;

The source control type. Possible values are BitBucket, Dropbox, GitHub and OneDrive.

interface TimerContext

interface TimerContext extends Context<mod.FunctionDefaultResponse>

Data that will be passed along in the context object to the timer callback.

method done

done(err?: Error | string | null, result?: R): void

A callback function that signals to the runtime that your code has completed. If your function is synchronous, you must call context.done at the end of execution. If your function is asynchronous, you should not use this callback.

property bindingData

bindingData: {
    invocationId: string;
    sys: {
        methodName: string;
        utcNow: string;
    };
    timerTrigger: string;
};

property bindingDefinitions

bindingDefinitions: BindingDefinition[];

Bindings your function uses, as defined in function.json.

property bindings

bindings: {
    timer: TimerInfo;
};

property executionContext

executionContext: {
    functionDirectory: string;
    functionName: string;
    invocationId: string;
};

property invocationId

invocationId: string;

property log

log: Logger;

Allows you to write streaming function logs. Calling directly allows you to write streaming function logs at the default trace level.

property req

req?: HttpRequest;

HTTP request object. Provided to your function when using HTTP Bindings.

property res

res?: undefined | {[key: string]: any};

HTTP response object. Provided to your function when using HTTP Bindings.

property traceContext

traceContext: TraceContext;

TraceContext information to enable distributed tracing scenarios.

class TimerFunction

class TimerFunction extends Function<TimerContext, TimerInfo, mod.FunctionDefaultResponse>

Azure Function triggered on a CRON schedule.

constructor

new TimerFunction(name: string, args: TimerFunctionArgs)

property appSettings

public appSettings?: pulumi.Input<{[key: string]: string}>;

Application settings required by the function.

property bindings

public bindings: pulumi.Input<BindingDefinition[]>;

An array of function binding definitions.

property callback

public callback: CallbackArgs<TimerContext, TimerInfo, mod.FunctionDefaultResponse>;

Function callback.

property name

public name: string;

Function name.

interface TimerFunctionArgs

interface TimerFunctionArgs extends CallbackFunctionArgs<TimerContext, TimerInfo, mod.FunctionDefaultResponse>

property callback

callback?: Callback<TimerContext, TimerInfo, mod.FunctionDefaultResponse>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<TimerContext, TimerInfo, mod.FunctionDefaultResponse>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

property runOnStartup

runOnStartup?: pulumi.Input<boolean>;

If true, the function is invoked when the runtime starts.

property schedule

schedule: pulumi.Input<string | ScheduleArgs>;

A schedule or a CRON expression for the timer schedule, e.g. ‘0 * * * * *‘.

interface TimerInfo

interface TimerInfo

Timer event data that will be passed to the timer callback.

property IsPastDue

IsPastDue: boolean;

property Schedule

Schedule: {
    AdjustForDST: boolean;
};

property ScheduleStatus

ScheduleStatus: {
    Last: string;
    LastUpdated: string;
    Next: string;
};

class TimerSubscription

class TimerSubscription extends EventSubscription<TimerContext, TimerInfo, mod.FunctionDefaultResponse>

constructor

new TimerSubscription(name: string, args: TimerSubscriptionArgs, opts: CustomResourceOptions)

method getData

protected getData(): Promise<TData>

Retrieves the data produces by [initialize]. The data is immediately available in a derived class’s constructor after the super(...) call to ComponentResource.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method initialize

protected initialize(args: Inputs): Promise<TData>

Can be overridden by a subclass to asynchronously initialize data for this Component automatically when constructed. The data will be available immediately for subclass constructors to use. To access the data use .getData.

method isInstance

static isInstance(obj: any): obj is ComponentResource

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

method registerOutputs

protected registerOutputs(outputs?: Inputs | Promise<Inputs> | Output<Inputs>): void

registerOutputs registers synthetic outputs that a component has initialized, usually by allocating other child sub-resources and propagating their resulting property values.

ComponentResources can call this at the end of their constructor to indicate that they are done creating child resources. This is not strictly necessary as this will automatically be called after the initialize method completes.

property functionApp

public functionApp: CallbackFunctionApp<TimerContext, TimerInfo, mod.FunctionDefaultResponse>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

interface TimerSubscriptionArgs

interface TimerSubscriptionArgs extends TimerFunctionArgs, CallbackFunctionAppArgs<TimerContext, TimerInfo, mod.FunctionDefaultResponse>

property account

account?: storageForTypesOnly.Account;

The storage account to use where the zip-file blob for the FunctionApp will be located. If not provided, a new storage account will create. It will be a ‘Standard’, ‘LRS’, ‘StorageV2’ account.

property appSettings

appSettings?: pulumi.Input<{[key: string]: any}>;

A key-value pair of App Settings.

property authSettings

authSettings?: pulumi.Input<FunctionAppAuthSettings>;

A authSettings block as defined below.

property callback

callback?: Callback<TimerContext, TimerInfo, mod.FunctionDefaultResponse>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<TimerContext, TimerInfo, mod.FunctionDefaultResponse>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property codePathOptions

codePathOptions?: pulumi.runtime.CodePathOptions;

Options to control which files and packages are included with the serialized FunctionApp code.

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<{
    name: pulumi.Input<string>;
    type: pulumi.Input<string>;
    value: pulumi.Input<string>;
}>[]>;

An connection_string block as defined below.

property container

container?: storageForTypesOnly.Container;

The container to use where the zip-file blob for the FunctionApp will be located. If not provided, the root container of the storage account will be used.

property dailyMemoryTimeQuota

dailyMemoryTimeQuota?: pulumi.Input<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. Defaults to 0.

property enableBuiltinLogging

enableBuiltinLogging?: pulumi.Input<boolean>;

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

property enabled

enabled?: pulumi.Input<boolean>;

Is the Function App enabled?

property hostSettings

hostSettings?: HostSettings;

Host configuration options.

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

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

property identity

identity?: pulumi.Input<FunctionAppIdentity>;

An identity block as defined below.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property location

location?: pulumi.Input<string>;

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

property name

name?: pulumi.Input<string>;

The name of the Function App.

property nodeVersion

nodeVersion?: pulumi.Input<string>;

Controls the value of WEBSITE_NODE_DEFAULT_VERSION in appSettings. If not provided, defaults to ~12.

property osType

osType?: pulumi.Input<string>;

A string indicating the Operating System type for this function app.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

property plan

plan?: appservice.Plan;

The App Service Plan within which to create this Function App. Changing this forces a new resource to be created.

If not provided, a default “Consumption” plan will be created. See: https://docs.microsoft.com/en-us/azure/azure-functions/functions-scale#consumption-plan for more details.

property resourceGroup

resourceGroup?: core.ResourceGroup;

The resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName].

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName]. Either [resourceGroupName] or [resourceGroup] must be supplied.

property runOnStartup

runOnStartup?: pulumi.Input<boolean>;

If true, the function is invoked when the runtime starts.

property schedule

schedule: pulumi.Input<string | ScheduleArgs>;

A schedule or a CRON expression for the timer schedule, e.g. ‘0 * * * * *‘.

property siteConfig

siteConfig?: pulumi.Input<FunctionAppSiteConfig>;

A site_config object as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property version

version?: pulumi.Input<string>;

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

interface VirtualNetworkSwiftConnectionArgs

interface VirtualNetworkSwiftConnectionArgs

The set of arguments for constructing a VirtualNetworkSwiftConnection resource.

property appServiceId

appServiceId: pulumi.Input<string>;

The ID of the App Service to associate to the VNet. Changing this forces a new resource to be created.

property subnetId

subnetId: pulumi.Input<string>;

The ID of the subnet the app service will be associated to (the subnet must have a serviceDelegation configured for Microsoft.Web/serverFarms).

interface VirtualNetworkSwiftConnectionState

interface VirtualNetworkSwiftConnectionState

Input properties used for looking up and filtering VirtualNetworkSwiftConnection resources.

property appServiceId

appServiceId?: pulumi.Input<string>;

The ID of the App Service to associate to the VNet. Changing this forces a new resource to be created.

property subnetId

subnetId?: pulumi.Input<string>;

The ID of the subnet the app service will be associated to (the subnet must have a serviceDelegation configured for Microsoft.Web/serverFarms).