Module storage

@pulumi/azure > storage

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-azure repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-azurerm repo.

class Account

extends CustomResource

Manage an Azure Storage Account.

Example Usage

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

const testrg = new azure.core.ResourceGroup("testrg", {
    location: "westus",
    name: "resourceGroupName",
});
const testsa = new azure.storage.Account("testsa", {
    accountReplicationType: "GRS",
    accountTier: "Standard",
    location: "westus",
    name: "storageaccountname",
    resourceGroupName: testrg.name,
    tags: {
        environment: "staging",
    },
});

Example Usage with Network Rules

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

const testrg = new azure.core.ResourceGroup("testrg", {
    location: "westus",
    name: "resourceGroupName",
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testrg.location,
    name: "virtnetname",
    resourceGroupName: testrg.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.2.0/24",
    name: "subnetname",
    resourceGroupName: testrg.name,
    serviceEndpoints: [
        "Microsoft.Sql",
        "Microsoft.Storage",
    ],
    virtualNetworkName: testVirtualNetwork.name,
});
const testsa = new azure.storage.Account("testsa", {
    accountReplicationType: "LRS",
    accountTier: "Standard",
    location: testrg.location,
    name: "storageaccountname",
    networkRules: {
        defaultAction: "Deny",
        ipRules: ["100.0.0.1"],
        virtualNetworkSubnetIds: [testSubnet.id],
    },
    resourceGroupName: testrg.name,
    tags: {
        environment: "staging",
    },
});

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/r/storage_account.html.markdown.

constructor

new Account(name: string, args: AccountArgs, opts?: pulumi.CustomResourceOptions)

Create a Account 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?: AccountState, opts?: pulumi.CustomResourceOptions): Account

Get an existing Account 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): boolean

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

property accessTier

public accessTier: pulumi.Output<string>;

Defines the access tier for BlobStorage and StorageV2 accounts. Valid options are Hot and Cool, defaults to Hot.

property accountEncryptionSource

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

The Encryption Source for this Storage Account. Possible values are Microsoft.Keyvault and Microsoft.Storage. Defaults to Microsoft.Storage.

property accountKind

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

Defines the Kind of account. Valid options are Storage, StorageV2 and BlobStorage. Changing this forces a new resource to be created. Defaults to Storage.

property accountReplicationType

public accountReplicationType: pulumi.Output<string>;

Defines the type of replication to use for this storage account. Valid options are LRS, GRS, RAGRS and ZRS.

property accountTier

public accountTier: pulumi.Output<string>;

Defines the Tier to use for this storage account. Valid options are Standard and Premium. Changing this forces a new resource to be created

property accountType

public accountType: pulumi.Output<string>;

property customDomain

public customDomain: pulumi.Output<{
    name: string;
    useSubdomain: undefined | false | true;
} | undefined>;

A customDomain block as documented below.

property enableBlobEncryption

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

Boolean flag which controls if Encryption Services are enabled for Blob storage, see here for more information. Defaults to true.

property enableFileEncryption

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

Boolean flag which controls if Encryption Services are enabled for File storage, see here for more information. Defaults to true.

property enableHttpsTrafficOnly

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

Boolean flag which forces HTTPS if enabled, see here for more information.

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<{
    principalId: string;
    tenantId: string;
    type: string;
}>;

A Managed Service Identity block as defined below.

property isHnsEnabled

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

Is Hierarchical Namespace enabled? This can be used with Azure Data Lake Storage Gen 2 (see here for more information). 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>;

The Custom Domain Name to use for the Storage Account, which will be validated by Azure.

property networkRules

public networkRules: pulumi.Output<{
    bypasses: string[];
    defaultAction: undefined | string;
    ipRules: string[];
    virtualNetworkSubnetIds: string[];
} | undefined>;

A networkRules block as documented below.

property primaryAccessKey

public primaryAccessKey: pulumi.Output<string>;

The primary access key for the storage account.

property primaryBlobConnectionString

public primaryBlobConnectionString: pulumi.Output<string>;

The connection string associated with the primary blob location.

property primaryBlobEndpoint

public primaryBlobEndpoint: pulumi.Output<string>;

The endpoint URL for blob storage in the primary location.

property primaryBlobHost

public primaryBlobHost: pulumi.Output<string>;

The hostname with port if applicable for blob storage in the primary location.

property primaryConnectionString

public primaryConnectionString: pulumi.Output<string>;

The connection string associated with the primary location.

property primaryDfsEndpoint

public primaryDfsEndpoint: pulumi.Output<string>;

The endpoint URL for DFS storage in the primary location.

property primaryDfsHost

public primaryDfsHost: pulumi.Output<string>;

The hostname with port if applicable for DFS storage in the primary location.

property primaryFileEndpoint

public primaryFileEndpoint: pulumi.Output<string>;

The endpoint URL for file storage in the primary location.

property primaryFileHost

public primaryFileHost: pulumi.Output<string>;

The hostname with port if applicable for file storage in the primary location.

property primaryLocation

public primaryLocation: pulumi.Output<string>;

The primary location of the storage account.

property primaryQueueEndpoint

public primaryQueueEndpoint: pulumi.Output<string>;

The endpoint URL for queue storage in the primary location.

property primaryQueueHost

public primaryQueueHost: pulumi.Output<string>;

The hostname with port if applicable for queue storage in the primary location.

property primaryTableEndpoint

public primaryTableEndpoint: pulumi.Output<string>;

The endpoint URL for table storage in the primary location.

property primaryTableHost

public primaryTableHost: pulumi.Output<string>;

The hostname with port if applicable for table storage in the primary location.

property primaryWebEndpoint

public primaryWebEndpoint: pulumi.Output<string>;

The endpoint URL for web storage in the primary location.

property primaryWebHost

public primaryWebHost: pulumi.Output<string>;

The hostname with port if applicable for web storage in the primary location.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

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

property secondaryAccessKey

public secondaryAccessKey: pulumi.Output<string>;

The secondary access key for the storage account.

property secondaryBlobConnectionString

public secondaryBlobConnectionString: pulumi.Output<string>;

The connection string associated with the secondary blob location.

property secondaryBlobEndpoint

public secondaryBlobEndpoint: pulumi.Output<string>;

The endpoint URL for blob storage in the secondary location.

property secondaryBlobHost

public secondaryBlobHost: pulumi.Output<string>;

The hostname with port if applicable for blob storage in the secondary location.

property secondaryConnectionString

public secondaryConnectionString: pulumi.Output<string>;

The connection string associated with the secondary location.

property secondaryDfsEndpoint

public secondaryDfsEndpoint: pulumi.Output<string>;

The endpoint URL for DFS storage in the secondary location.

property secondaryDfsHost

public secondaryDfsHost: pulumi.Output<string>;

The hostname with port if applicable for DFS storage in the secondary location.

property secondaryFileEndpoint

public secondaryFileEndpoint: pulumi.Output<string>;

The endpoint URL for file storage in the secondary location.

property secondaryFileHost

public secondaryFileHost: pulumi.Output<string>;

The hostname with port if applicable for file storage in the secondary location.

property secondaryLocation

public secondaryLocation: pulumi.Output<string>;

The secondary location of the storage account.

property secondaryQueueEndpoint

public secondaryQueueEndpoint: pulumi.Output<string>;

The endpoint URL for queue storage in the secondary location.

property secondaryQueueHost

public secondaryQueueHost: pulumi.Output<string>;

The hostname with port if applicable for queue storage in the secondary location.

property secondaryTableEndpoint

public secondaryTableEndpoint: pulumi.Output<string>;

The endpoint URL for table storage in the secondary location.

property secondaryTableHost

public secondaryTableHost: pulumi.Output<string>;

The hostname with port if applicable for table storage in the secondary location.

property secondaryWebEndpoint

public secondaryWebEndpoint: pulumi.Output<string>;

The endpoint URL for web storage in the secondary location.

property secondaryWebHost

public secondaryWebHost: pulumi.Output<string>;

The hostname with port if applicable for web storage in the secondary location.

property tags

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

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.

class Blob

extends CustomResource

Manage an Azure Storage Blob.

Example Usage

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

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "westus",
    name: "acctestRG-d",
});
const testAccount = new azure.storage.Account("test", {
    accountReplicationType: "LRS",
    accountTier: "Standard",
    location: "westus",
    name: "acctestaccs",
    resourceGroupName: testResourceGroup.name,
});
const testContainer = new azure.storage.Container("test", {
    containerAccessType: "private",
    name: "vhds",
    resourceGroupName: testResourceGroup.name,
    storageAccountName: testAccount.name,
});
const testsb = new azure.storage.Blob("testsb", {
    name: "sample.vhd",
    resourceGroupName: testResourceGroup.name,
    size: 5120,
    storageAccountName: testAccount.name,
    storageContainerName: testContainer.name,
    type: "page",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/r/storage_blob.html.markdown.

constructor

new Blob(name: string, args: BlobArgs, opts?: pulumi.CustomResourceOptions)

Create a Blob 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?: BlobState, opts?: pulumi.CustomResourceOptions): Blob

Get an existing Blob 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): boolean

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

property attempts

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

The number of attempts to make per page or block when uploading. Defaults to 1.

property contentType

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

The content type of the storage blob. Cannot be defined if sourceUri is defined. Defaults to application/octet-stream.

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 metadata

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

A map of custom blob metadata.

property name

public name: pulumi.Output<string>;

The name of the storage blob. Must be unique within the storage container the blob is located.

property parallelism

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

The number of workers per CPU core to run for concurrent uploads. Defaults to 8.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

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

property size

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

Used only for page blobs to specify the size in bytes of the blob to be created. Must be a multiple of 512. Defaults to 0.

property source

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

An absolute path to a file on the local system. Cannot be defined if sourceUri is defined.

property sourceUri

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

The URI of an existing blob, or a file in the Azure File service, to use as the source contents for the blob to be created. Changing this forces a new resource to be created. Cannot be defined if source is defined.

property storageAccountName

public storageAccountName: pulumi.Output<string>;

Specifies the storage account in which to create the storage container. Changing this forces a new resource to be created.

property storageContainerName

public storageContainerName: pulumi.Output<string>;

The name of the storage container in which this blob should be created.

property type

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

The type of the storage blob to be created. One of either block or page. When not copying from an existing blob, this becomes required.

property url

public url: pulumi.Output<string>;

The URL of the blob

property urn

urn: Output<URN>;

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

class BlobEventSubscription

extends EventSubscription<BlobContext, Buffer, appservice.FunctionDefaultResponse>

constructor

new BlobEventSubscription(name: string, container: storage.Container, args: BlobEventSubscriptionArgs, opts: pulumi.ComponentResourceOptions)

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

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

property functionApp

public functionApp: CallbackFunctionApp<BlobContext, Buffer, appservice.FunctionDefaultResponse>;

property urn

urn: Output<URN>;

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

class BlobFunction

extends Function<BlobContext, Buffer, appservice.FunctionDefaultResponse>

Azure Function triggered by changes in a Storage Blob Container.

constructor

new BlobFunction(name: string, args: BlobFunctionArgs)

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<BlobContext, Buffer, appservice.FunctionDefaultResponse>;

Function callback.

property name

public name: string;

Function name.

class BlobInputBinding

implements BindingSettings

constructor

new BlobInputBinding(name: string, container: Container, args: BlobInputBindingArgs)

property binding

property settings

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

class Container

extends CustomResource

Manage an Azure Storage Container.

Example Usage

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

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "westus",
    name: "acctestRG",
});
const testAccount = new azure.storage.Account("test", {
    accountReplicationType: "LRS",
    accountTier: "Standard",
    location: "westus",
    name: "accteststorageaccount",
    resourceGroupName: testResourceGroup.name,
    tags: {
        environment: "staging",
    },
});
const testContainer = new azure.storage.Container("test", {
    containerAccessType: "private",
    name: "vhds",
    resourceGroupName: testResourceGroup.name,
    storageAccountName: testAccount.name,
});

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/r/storage_container.html.markdown.

constructor

new Container(name: string, args: ContainerArgs, opts?: pulumi.CustomResourceOptions)

Create a Container 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?: ContainerState, opts?: pulumi.CustomResourceOptions): Container

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

method getEventFunction

getEventFunction(name: string, args: BlobCallback | GetBlobFunctionArgs): BlobFunction

Creates a new Function triggered by events in the given Container using the callback provided. [getEventFunction] creates no Azure resources automatically: the returned Function should be used as part of a [MultiCallbackFunctionApp]. Use [onEvent] if you want to create a Function App with a single Function.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method input

input(name: string, args: BlobInputBindingArgs): appservice.InputBindingSettings

Creates an input binding linked to the given Blob Container to be used for an Azure Function.

method isInstance

public static isInstance(obj: any): boolean

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

method onBlobEvent

onBlobEvent(name: string, args: BlobCallback | BlobEventSubscriptionArgs, opts?: pulumi.ComponentResourceOptions): BlobEventSubscription

Creates a new subscription to events fired from this Container to the handler provided, along with options to control the behavior of the subscription. A dedicated Function App is created behind the scenes with a single Azure Function in it. Use [getEventFunction] if you want to compose multiple Functions into the same App manually.

property containerAccessType

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

The ‘interface’ for access the container provides. Can be either blob, container or private. Defaults to private.

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 name

public name: pulumi.Output<string>;

The name of the storage container. Must be unique within the storage service the container is located.

property properties

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

Key-value definition of additional properties associated to the storage container

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

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

property storageAccountName

public storageAccountName: pulumi.Output<string>;

Specifies the storage account in which to create the storage container. 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.

class Queue

extends CustomResource

Manage an Azure Storage Queue.

Example Usage

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

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "westus",
    name: "example-resources",
});
const testAccount = new azure.storage.Account("test", {
    accountReplicationType: "LRS",
    accountTier: "Standard",
    location: testResourceGroup.location,
    name: "examplestorageacc",
    resourceGroupName: testResourceGroup.name,
});
const testQueue = new azure.storage.Queue("test", {
    name: "mysamplequeue",
    resourceGroupName: testResourceGroup.name,
    storageAccountName: testAccount.name,
});

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/r/storage_queue.html.markdown.

constructor

new Queue(name: string, args: QueueArgs, opts?: pulumi.CustomResourceOptions)

Create a Queue 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?: QueueState, opts?: pulumi.CustomResourceOptions): Queue

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

method getEventFunction

getEventFunction(name: string, args: QueueCallback | appservice.CallbackFunctionArgs<QueueContext, any, appservice.FunctionDefaultResponse>): QueueFunction

Creates a new Function triggered by messages in the given queue using the callback provided. [getEventFunction] creates no Azure resources automatically: the returned Function should be used as part of a [MultiCallbackFunctionApp]. Use [onEvent] if you want to create a Function App with a single Function.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

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

method onEvent

onEvent(name: string, args: QueueCallback | QueueEventSubscriptionArgs, opts?: pulumi.ComponentResourceOptions): QueueEventSubscription

Creates a new subscription to the given queue using the callback provided, along with optional options to control the behavior of the subscription. A dedicated Function App is created behind the scenes with a single Azure Function in it. Use [getEventFunction] if you want to compose multiple Functions into the same App manually.

method output

output(name: string): appservice.OutputBindingSettings

Creates an output binding linked to the given queue to be used for an Azure Function.

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 name

public name: pulumi.Output<string>;

The name of the storage queue. Must be unique within the storage account the queue is located.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

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

property storageAccountName

public storageAccountName: pulumi.Output<string>;

Specifies the storage account in which to create the storage queue. 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.

class QueueEventSubscription

extends EventSubscription<QueueContext, any, appservice.FunctionDefaultResponse>

constructor

new QueueEventSubscription(name: string, queue: Queue, args: QueueEventSubscriptionArgs, opts: pulumi.ComponentResourceOptions)

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

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

property functionApp

public functionApp: CallbackFunctionApp<QueueContext, any, appservice.FunctionDefaultResponse>;

property urn

urn: Output<URN>;

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

class QueueFunction

extends Function<QueueContext, any, appservice.FunctionDefaultResponse>

Azure Function triggered by a Storage Queue.

constructor

new QueueFunction(name: string, args: QueueFunctionArgs)

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<QueueContext, any, appservice.FunctionDefaultResponse>;

Function callback.

property name

public name: string;

Function name.

class QueueOutputBinding

implements BindingSettings

Azure Function’s output binding that sends messages to a Storage Queue.

constructor

new QueueOutputBinding(name: string, queue: Queue)

property binding

property settings

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

class Share

extends CustomResource

Manage an Azure Storage File Share.

Example Usage

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

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "westus",
    name: "azuretest",
});
const testAccount = new azure.storage.Account("test", {
    accountReplicationType: "LRS",
    accountTier: "Standard",
    location: "westus",
    name: "azureteststorage",
    resourceGroupName: testResourceGroup.name,
});
const testshare = new azure.storage.Share("testshare", {
    name: "sharename",
    quota: 50,
    resourceGroupName: testResourceGroup.name,
    storageAccountName: testAccount.name,
});

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/r/storage_share.html.markdown.

constructor

new Share(name: string, args: ShareArgs, opts?: pulumi.CustomResourceOptions)

Create a Share 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?: ShareState, opts?: pulumi.CustomResourceOptions): Share

Get an existing Share 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): boolean

Returns true if the given object is an instance of Share. 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 name

public name: pulumi.Output<string>;

The name of the share. Must be unique within the storage account where the share is located.

property quota

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

The maximum size of the share, in gigabytes. Must be greater than 0, and less than or equal to 5 TB (5120 GB). Default is 5120.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

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

property storageAccountName

public storageAccountName: pulumi.Output<string>;

Specifies the storage account in which to create the share. Changing this forces a new resource to be created.

property url

public url: pulumi.Output<string>;

The URL of the share

property urn

urn: Output<URN>;

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

class Table

extends CustomResource

Manage an Azure Storage Table.

Example Usage

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

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "westus",
    name: "azuretest",
});
const testAccount = new azure.storage.Account("test", {
    accountReplicationType: "LRS",
    accountTier: "Standard",
    location: "westus",
    name: "azureteststorage1",
    resourceGroupName: testResourceGroup.name,
});
const testTable = new azure.storage.Table("test", {
    name: "mysampletable",
    resourceGroupName: testResourceGroup.name,
    storageAccountName: testAccount.name,
});

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/r/storage_table.html.markdown.

constructor

new Table(name: string, args: TableArgs, opts?: pulumi.CustomResourceOptions)

Create a Table 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?: TableState, opts?: pulumi.CustomResourceOptions): Table

Get an existing Table 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 input

input(name: string, args?: TableInputBindingArgs): appservice.InputBindingSettings

Creates an input binding linked to the given table to be used for an Azure Function.

method isInstance

public static isInstance(obj: any): boolean

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

method output

output(name: string): appservice.OutputBindingSettings

Creates an output binding linked to the given table to be used for an Azure Function.

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 name

public name: pulumi.Output<string>;

The name of the storage table. Must be unique within the storage account the table is located.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

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

property storageAccountName

public storageAccountName: pulumi.Output<string>;

Specifies the storage account in which to create the storage table. 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.

class TableInputBinding

implements BindingSettings

constructor

new TableInputBinding(name: string, table: Table, args?: TableInputBindingArgs)

property binding

property settings

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

class TableOutputBinding

implements BindingSettings

constructor

new TableOutputBinding(name: string, table: Table)

property binding

property settings

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

class ZipBlob

extends CustomResource

constructor

new ZipBlob(name: string, args: ZipBlobArgs, opts?: pulumi.CustomResourceOptions)

Create a ZipBlob 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?: ZipBlobState, opts?: pulumi.CustomResourceOptions): ZipBlob

Get an existing ZipBlob 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): boolean

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

property attempts

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

property content

property contentType

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

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 metadata

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

property name

public name: pulumi.Output<string>;

property parallelism

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

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

property size

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

property sourceUri

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

property storageAccountName

public storageAccountName: pulumi.Output<string>;

property storageContainerName

public storageContainerName: pulumi.Output<string>;

property type

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

property url

public url: pulumi.Output<string>;

property urn

urn: Output<URN>;

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

function getAccount

getAccount(args: GetAccountArgs, opts?: pulumi.InvokeOptions): Promise<GetAccountResult> & GetAccountResult

Use this data source to access information about an existing Storage Account.

Example Usage

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

const test = pulumi.output(azure.storage.getAccount({
    name: "packerimages",
    resourceGroupName: "packer-storage",
}));

export const storageAccountTier = test.accountTier;

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/d/storage_account.html.markdown.

function getAccountSAS

getAccountSAS(args: GetAccountSASArgs, opts?: pulumi.InvokeOptions): Promise<GetAccountSASResult> & GetAccountSASResult

Use this data source to obtain a Shared Access Signature (SAS Token) for an existing Storage Account.

Shared access signatures allow fine-grained, ephemeral access control to various aspects of an Azure Storage Account.

Note that this is an Account SAS and not a Service SAS.

Example Usage

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

const testrg = new azure.core.ResourceGroup("testrg", {
    location: "westus",
    name: "resourceGroupName",
});
const testsa = new azure.storage.Account("testsa", {
    accountReplicationType: "GRS",
    accountTier: "Standard",
    location: "westus",
    name: "storageaccountname",
    resourceGroupName: testrg.name,
    tags: {
        environment: "staging",
    },
});
const test = testsa.primaryConnectionString.apply(primaryConnectionString => azure.storage.getAccountSAS({
    connectionString: primaryConnectionString,
    expiry: "2020-03-21",
    httpsOnly: true,
    permissions: {
        add: true,
        create: true,
        delete: false,
        list: false,
        process: false,
        read: true,
        update: false,
        write: true,
    },
    resourceTypes: {
        container: false,
        object: false,
        service: true,
    },
    services: {
        blob: true,
        file: false,
        queue: false,
        table: false,
    },
    start: "2018-03-21",
}));

export const sasUrlQueryString = test.sas;

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/d/storage_account_sas.html.markdown.

function signedBlobReadUrl

signedBlobReadUrl(blob: Blob | ZipBlob, account: Account): pulumi.Output<string>

Produce a URL with read-only access to a Storage Blob with a Shared Access Signature (SAS).

interface AccountArgs

The set of arguments for constructing a Account resource.

property accessTier

accessTier?: pulumi.Input<string>;

Defines the access tier for BlobStorage and StorageV2 accounts. Valid options are Hot and Cool, defaults to Hot.

property accountEncryptionSource

accountEncryptionSource?: pulumi.Input<string>;

The Encryption Source for this Storage Account. Possible values are Microsoft.Keyvault and Microsoft.Storage. Defaults to Microsoft.Storage.

property accountKind

accountKind?: pulumi.Input<string>;

Defines the Kind of account. Valid options are Storage, StorageV2 and BlobStorage. Changing this forces a new resource to be created. Defaults to Storage.

property accountReplicationType

accountReplicationType: pulumi.Input<string>;

Defines the type of replication to use for this storage account. Valid options are LRS, GRS, RAGRS and ZRS.

property accountTier

accountTier: pulumi.Input<string>;

Defines the Tier to use for this storage account. Valid options are Standard and Premium. Changing this forces a new resource to be created

property accountType

accountType?: pulumi.Input<string>;

property customDomain

customDomain?: pulumi.Input<{
    name: pulumi.Input<string>;
    useSubdomain: pulumi.Input<boolean>;
}>;

A customDomain block as documented below.

property enableBlobEncryption

enableBlobEncryption?: pulumi.Input<boolean>;

Boolean flag which controls if Encryption Services are enabled for Blob storage, see here for more information. Defaults to true.

property enableFileEncryption

enableFileEncryption?: pulumi.Input<boolean>;

Boolean flag which controls if Encryption Services are enabled for File storage, see here for more information. Defaults to true.

property enableHttpsTrafficOnly

enableHttpsTrafficOnly?: pulumi.Input<boolean>;

Boolean flag which forces HTTPS if enabled, see here for more information.

property identity

identity?: pulumi.Input<{
    principalId: pulumi.Input<string>;
    tenantId: pulumi.Input<string>;
    type: pulumi.Input<string>;
}>;

A Managed Service Identity block as defined below.

property isHnsEnabled

isHnsEnabled?: pulumi.Input<boolean>;

Is Hierarchical Namespace enabled? This can be used with Azure Data Lake Storage Gen 2 (see here for more information). 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>;

The Custom Domain Name to use for the Storage Account, which will be validated by Azure.

property networkRules

networkRules?: pulumi.Input<{
    bypasses: pulumi.Input<pulumi.Input<string>[]>;
    defaultAction: pulumi.Input<string>;
    ipRules: pulumi.Input<pulumi.Input<string>[]>;
    virtualNetworkSubnetIds: pulumi.Input<pulumi.Input<string>[]>;
}>;

A networkRules block as documented below.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

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

property tags

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

A mapping of tags to assign to the resource.

interface AccountState

Input properties used for looking up and filtering Account resources.

property accessTier

accessTier?: pulumi.Input<string>;

Defines the access tier for BlobStorage and StorageV2 accounts. Valid options are Hot and Cool, defaults to Hot.

property accountEncryptionSource

accountEncryptionSource?: pulumi.Input<string>;

The Encryption Source for this Storage Account. Possible values are Microsoft.Keyvault and Microsoft.Storage. Defaults to Microsoft.Storage.

property accountKind

accountKind?: pulumi.Input<string>;

Defines the Kind of account. Valid options are Storage, StorageV2 and BlobStorage. Changing this forces a new resource to be created. Defaults to Storage.

property accountReplicationType

accountReplicationType?: pulumi.Input<string>;

Defines the type of replication to use for this storage account. Valid options are LRS, GRS, RAGRS and ZRS.

property accountTier

accountTier?: pulumi.Input<string>;

Defines the Tier to use for this storage account. Valid options are Standard and Premium. Changing this forces a new resource to be created

property accountType

accountType?: pulumi.Input<string>;

property customDomain

customDomain?: pulumi.Input<{
    name: pulumi.Input<string>;
    useSubdomain: pulumi.Input<boolean>;
}>;

A customDomain block as documented below.

property enableBlobEncryption

enableBlobEncryption?: pulumi.Input<boolean>;

Boolean flag which controls if Encryption Services are enabled for Blob storage, see here for more information. Defaults to true.

property enableFileEncryption

enableFileEncryption?: pulumi.Input<boolean>;

Boolean flag which controls if Encryption Services are enabled for File storage, see here for more information. Defaults to true.

property enableHttpsTrafficOnly

enableHttpsTrafficOnly?: pulumi.Input<boolean>;

Boolean flag which forces HTTPS if enabled, see here for more information.

property identity

identity?: pulumi.Input<{
    principalId: pulumi.Input<string>;
    tenantId: pulumi.Input<string>;
    type: pulumi.Input<string>;
}>;

A Managed Service Identity block as defined below.

property isHnsEnabled

isHnsEnabled?: pulumi.Input<boolean>;

Is Hierarchical Namespace enabled? This can be used with Azure Data Lake Storage Gen 2 (see here for more information). 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>;

The Custom Domain Name to use for the Storage Account, which will be validated by Azure.

property networkRules

networkRules?: pulumi.Input<{
    bypasses: pulumi.Input<pulumi.Input<string>[]>;
    defaultAction: pulumi.Input<string>;
    ipRules: pulumi.Input<pulumi.Input<string>[]>;
    virtualNetworkSubnetIds: pulumi.Input<pulumi.Input<string>[]>;
}>;

A networkRules block as documented below.

property primaryAccessKey

primaryAccessKey?: pulumi.Input<string>;

The primary access key for the storage account.

property primaryBlobConnectionString

primaryBlobConnectionString?: pulumi.Input<string>;

The connection string associated with the primary blob location.

property primaryBlobEndpoint

primaryBlobEndpoint?: pulumi.Input<string>;

The endpoint URL for blob storage in the primary location.

property primaryBlobHost

primaryBlobHost?: pulumi.Input<string>;

The hostname with port if applicable for blob storage in the primary location.

property primaryConnectionString

primaryConnectionString?: pulumi.Input<string>;

The connection string associated with the primary location.

property primaryDfsEndpoint

primaryDfsEndpoint?: pulumi.Input<string>;

The endpoint URL for DFS storage in the primary location.

property primaryDfsHost

primaryDfsHost?: pulumi.Input<string>;

The hostname with port if applicable for DFS storage in the primary location.

property primaryFileEndpoint

primaryFileEndpoint?: pulumi.Input<string>;

The endpoint URL for file storage in the primary location.

property primaryFileHost

primaryFileHost?: pulumi.Input<string>;

The hostname with port if applicable for file storage in the primary location.

property primaryLocation

primaryLocation?: pulumi.Input<string>;

The primary location of the storage account.

property primaryQueueEndpoint

primaryQueueEndpoint?: pulumi.Input<string>;

The endpoint URL for queue storage in the primary location.

property primaryQueueHost

primaryQueueHost?: pulumi.Input<string>;

The hostname with port if applicable for queue storage in the primary location.

property primaryTableEndpoint

primaryTableEndpoint?: pulumi.Input<string>;

The endpoint URL for table storage in the primary location.

property primaryTableHost

primaryTableHost?: pulumi.Input<string>;

The hostname with port if applicable for table storage in the primary location.

property primaryWebEndpoint

primaryWebEndpoint?: pulumi.Input<string>;

The endpoint URL for web storage in the primary location.

property primaryWebHost

primaryWebHost?: pulumi.Input<string>;

The hostname with port if applicable for web storage in the primary location.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

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

property secondaryAccessKey

secondaryAccessKey?: pulumi.Input<string>;

The secondary access key for the storage account.

property secondaryBlobConnectionString

secondaryBlobConnectionString?: pulumi.Input<string>;

The connection string associated with the secondary blob location.

property secondaryBlobEndpoint

secondaryBlobEndpoint?: pulumi.Input<string>;

The endpoint URL for blob storage in the secondary location.

property secondaryBlobHost

secondaryBlobHost?: pulumi.Input<string>;

The hostname with port if applicable for blob storage in the secondary location.

property secondaryConnectionString

secondaryConnectionString?: pulumi.Input<string>;

The connection string associated with the secondary location.

property secondaryDfsEndpoint

secondaryDfsEndpoint?: pulumi.Input<string>;

The endpoint URL for DFS storage in the secondary location.

property secondaryDfsHost

secondaryDfsHost?: pulumi.Input<string>;

The hostname with port if applicable for DFS storage in the secondary location.

property secondaryFileEndpoint

secondaryFileEndpoint?: pulumi.Input<string>;

The endpoint URL for file storage in the secondary location.

property secondaryFileHost

secondaryFileHost?: pulumi.Input<string>;

The hostname with port if applicable for file storage in the secondary location.

property secondaryLocation

secondaryLocation?: pulumi.Input<string>;

The secondary location of the storage account.

property secondaryQueueEndpoint

secondaryQueueEndpoint?: pulumi.Input<string>;

The endpoint URL for queue storage in the secondary location.

property secondaryQueueHost

secondaryQueueHost?: pulumi.Input<string>;

The hostname with port if applicable for queue storage in the secondary location.

property secondaryTableEndpoint

secondaryTableEndpoint?: pulumi.Input<string>;

The endpoint URL for table storage in the secondary location.

property secondaryTableHost

secondaryTableHost?: pulumi.Input<string>;

The hostname with port if applicable for table storage in the secondary location.

property secondaryWebEndpoint

secondaryWebEndpoint?: pulumi.Input<string>;

The endpoint URL for web storage in the secondary location.

property secondaryWebHost

secondaryWebHost?: pulumi.Input<string>;

The hostname with port if applicable for web storage in the secondary location.

property tags

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

A mapping of tags to assign to the resource.

interface BlobArgs

The set of arguments for constructing a Blob resource.

property attempts

attempts?: pulumi.Input<number>;

The number of attempts to make per page or block when uploading. Defaults to 1.

property contentType

contentType?: pulumi.Input<string>;

The content type of the storage blob. Cannot be defined if sourceUri is defined. Defaults to application/octet-stream.

property metadata

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

A map of custom blob metadata.

property name

name?: pulumi.Input<string>;

The name of the storage blob. Must be unique within the storage container the blob is located.

property parallelism

parallelism?: pulumi.Input<number>;

The number of workers per CPU core to run for concurrent uploads. Defaults to 8.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

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

property size

size?: pulumi.Input<number>;

Used only for page blobs to specify the size in bytes of the blob to be created. Must be a multiple of 512. Defaults to 0.

property source

source?: pulumi.Input<string>;

An absolute path to a file on the local system. Cannot be defined if sourceUri is defined.

property sourceUri

sourceUri?: pulumi.Input<string>;

The URI of an existing blob, or a file in the Azure File service, to use as the source contents for the blob to be created. Changing this forces a new resource to be created. Cannot be defined if source is defined.

property storageAccountName

storageAccountName: pulumi.Input<string>;

Specifies the storage account in which to create the storage container. Changing this forces a new resource to be created.

property storageContainerName

storageContainerName: pulumi.Input<string>;

The name of the storage container in which this blob should be created.

property type

type?: pulumi.Input<string>;

The type of the storage blob to be created. One of either block or page. When not copying from an existing blob, this becomes required.

interface BlobContext

extends Context<appservice.FunctionDefaultResponse>

Data that will be passed along in the context object to the BlobCallback.

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: {
    blobName: string;
    blobTrigger: string;
    invocationId: string;
    metadata: Record<string, string>;
    properties: {
        appendBlobCommittedBlockCount: any;
        blobType: string;
        cacheControl: any;
        contentDisposition: any;
        contentEncoding: any;
        contentLanguage: any;
        contentMD5: any;
        contentType: string;
        eTag: string;
        isServerEncrypted: boolean;
        lastModified: string;
        leaseDuration: string;
        leaseState: string;
        leaseStatus: string;
        length: number;
        pageBlobSequenceNumber: any;
    };
    sys: {
        methodName: string;
        utcNow: string;
    };
    uri: string;
};

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: {
    functionDirectory: string;
    functionName: string;
    invocationId: string;
};

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.

interface BlobEventSubscriptionArgs

extends GetBlobFunctionArgs, CallbackFunctionAppArgs<BlobContext, Buffer, appservice.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 callback

callback?: Callback<BlobContext, Buffer, appservice.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<BlobContext, Buffer, appservice.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 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 filterPrefix

filterPrefix?: pulumi.Input<string>;

An optional prefix or suffix to filter down notifications. See https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob#trigger---blob-name-patterns for more details.

property filterSuffix

filterSuffix?: pulumi.Input<string>;

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<{
    principalId: pulumi.Input<string>;
    tenantId: pulumi.Input<string>;
    type: pulumi.Input<string>;
}>;

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

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]. If none of the two is supplied, the resource group of the Storage Account will be used.

property siteConfig

siteConfig?: pulumi.Input<{
    alwaysOn: pulumi.Input<boolean>;
    linuxFxVersion: pulumi.Input<string>;
    use32BitWorkerProcess: pulumi.Input<boolean>;
    websocketsEnabled: pulumi.Input<boolean>;
}>;

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 ~2.

interface BlobFunctionArgs

extends GetBlobFunctionArgs

property callback

callback?: Callback<BlobContext, Buffer, appservice.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<BlobContext, Buffer, appservice.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 container

container: Container;

Storage Blob Container to subscribe for events of.

property filterPrefix

filterPrefix?: pulumi.Input<string>;

An optional prefix or suffix to filter down notifications. See https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob#trigger---blob-name-patterns for more details.

property filterSuffix

filterSuffix?: pulumi.Input<string>;

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

interface BlobInputBindingArgs

property blobName

blobName: pulumi.Input<string>;

Blob name to retrieve. May contain a binding expression to bind to a value from a trigger.

interface BlobInputBindingDefinition

extends BlobBindingDefinition

property connection

connection: pulumi.Input<string>;

The storage connection string for the storage account containing the blob.

property dataType

dataType: “binary”;

How we want the blob represented when passed into the callback. We specify ‘binary’ so that all data is passed in as a buffer. Otherwise, Azure will attempt to sniff the content and convert it accordingly. This gives us a consistent way to know what data will be passed into the function.

property direction

direction: “in”;

The direction of the binding. Must be set to ‘in’ for an input binding.

property name

name: string;

The name of the property in the context object to bind the actual blob value to. Not really important in our implementation as the blob value will be passed as the second argument to the callback function.

property path

path: pulumi.Input<string>;

The path to the blob we want to create a trigger for.

property type

type: “blob”;

The type of a blob binding. Must be ‘blob’.

interface BlobState

Input properties used for looking up and filtering Blob resources.

property attempts

attempts?: pulumi.Input<number>;

The number of attempts to make per page or block when uploading. Defaults to 1.

property contentType

contentType?: pulumi.Input<string>;

The content type of the storage blob. Cannot be defined if sourceUri is defined. Defaults to application/octet-stream.

property metadata

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

A map of custom blob metadata.

property name

name?: pulumi.Input<string>;

The name of the storage blob. Must be unique within the storage container the blob is located.

property parallelism

parallelism?: pulumi.Input<number>;

The number of workers per CPU core to run for concurrent uploads. Defaults to 8.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

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

property size

size?: pulumi.Input<number>;

Used only for page blobs to specify the size in bytes of the blob to be created. Must be a multiple of 512. Defaults to 0.

property source

source?: pulumi.Input<string>;

An absolute path to a file on the local system. Cannot be defined if sourceUri is defined.

property sourceUri

sourceUri?: pulumi.Input<string>;

The URI of an existing blob, or a file in the Azure File service, to use as the source contents for the blob to be created. Changing this forces a new resource to be created. Cannot be defined if source is defined.

property storageAccountName

storageAccountName?: pulumi.Input<string>;

Specifies the storage account in which to create the storage container. Changing this forces a new resource to be created.

property storageContainerName

storageContainerName?: pulumi.Input<string>;

The name of the storage container in which this blob should be created.

property type

type?: pulumi.Input<string>;

The type of the storage blob to be created. One of either block or page. When not copying from an existing blob, this becomes required.

property url

url?: pulumi.Input<string>;

The URL of the blob

interface ContainerArgs

The set of arguments for constructing a Container resource.

property containerAccessType

containerAccessType?: pulumi.Input<string>;

The ‘interface’ for access the container provides. Can be either blob, container or private. Defaults to private.

property name

name?: pulumi.Input<string>;

The name of the storage container. Must be unique within the storage service the container is located.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

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

property storageAccountName

storageAccountName: pulumi.Input<string>;

Specifies the storage account in which to create the storage container. Changing this forces a new resource to be created.

interface ContainerState

Input properties used for looking up and filtering Container resources.

property containerAccessType

containerAccessType?: pulumi.Input<string>;

The ‘interface’ for access the container provides. Can be either blob, container or private. Defaults to private.

property name

name?: pulumi.Input<string>;

The name of the storage container. Must be unique within the storage service the container is located.

property properties

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

Key-value definition of additional properties associated to the storage container

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

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

property storageAccountName

storageAccountName?: pulumi.Input<string>;

Specifies the storage account in which to create the storage container. Changing this forces a new resource to be created.

interface GetAccountArgs

A collection of arguments for invoking getAccount.

property name

name: string;

Specifies the name of the Storage Account

property resourceGroupName

resourceGroupName: string;

Specifies the name of the resource group the Storage Account is located in.

interface GetAccountResult

A collection of values returned by getAccount.

property accessTier

accessTier: string;

The access tier for BlobStorage accounts.

property accountEncryptionSource

accountEncryptionSource: string;

The Encryption Source for this Storage Account.

property accountKind

accountKind: string;

The Kind of account.

property accountReplicationType

accountReplicationType: string;

The type of replication used for this storage account.

property accountTier

accountTier: string;

The Tier of this storage account.

property customDomain

customDomain: {
    name: string;
};

A customDomain block as documented below.

property enableBlobEncryption

enableBlobEncryption: boolean;

Are Encryption Services are enabled for Blob storage? See here for more information.

property enableFileEncryption

enableFileEncryption: boolean;

Are Encryption Services are enabled for File storage? See here for more information.

property enableHttpsTrafficOnly

enableHttpsTrafficOnly: boolean;

Is traffic only allowed via HTTPS? See here for more information.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property isHnsEnabled

isHnsEnabled: boolean;

Is Hierarchical Namespace enabled?

property location

location: string;

The Azure location where the Storage Account exists

property name

name: string;

The Custom Domain Name used for the Storage Account.

property primaryAccessKey

primaryAccessKey: string;

The primary access key for the Storage Account.

property primaryBlobConnectionString

primaryBlobConnectionString: string;

The connection string associated with the primary blob location

property primaryBlobEndpoint

primaryBlobEndpoint: string;

The endpoint URL for blob storage in the primary location.

property primaryBlobHost

primaryBlobHost: string;

The hostname with port if applicable for blob storage in the primary location.

property primaryConnectionString

primaryConnectionString: string;

The connection string associated with the primary location

property primaryDfsEndpoint

primaryDfsEndpoint: string;

The endpoint URL for DFS storage in the primary location.

property primaryDfsHost

primaryDfsHost: string;

The hostname with port if applicable for DFS storage in the primary location.

property primaryFileEndpoint

primaryFileEndpoint: string;

The endpoint URL for file storage in the primary location.

property primaryFileHost

primaryFileHost: string;

The hostname with port if applicable for file storage in the primary location.

property primaryLocation

primaryLocation: string;

The primary location of the Storage Account.

property primaryQueueEndpoint

primaryQueueEndpoint: string;

The endpoint URL for queue storage in the primary location.

property primaryQueueHost

primaryQueueHost: string;

The hostname with port if applicable for queue storage in the primary location.

property primaryTableEndpoint

primaryTableEndpoint: string;

The endpoint URL for table storage in the primary location.

property primaryTableHost

primaryTableHost: string;

The hostname with port if applicable for table storage in the primary location.

property primaryWebEndpoint

primaryWebEndpoint: string;

The endpoint URL for web storage in the primary location.

property primaryWebHost

primaryWebHost: string;

The hostname with port if applicable for web storage in the primary location.

property resourceGroupName

resourceGroupName: string;

property secondaryAccessKey

secondaryAccessKey: string;

The secondary access key for the Storage Account.

property secondaryBlobConnectionString

secondaryBlobConnectionString: string;

The connection string associated with the secondary blob location

property secondaryBlobEndpoint

secondaryBlobEndpoint: string;

The endpoint URL for blob storage in the secondary location.

property secondaryBlobHost

secondaryBlobHost: string;

The hostname with port if applicable for blob storage in the secondary location.

property secondaryConnectionString

secondaryConnectionString: string;

The connection string associated with the secondary location

property secondaryDfsEndpoint

secondaryDfsEndpoint: string;

The endpoint URL for DFS storage in the secondary location.

property secondaryDfsHost

secondaryDfsHost: string;

The hostname with port if applicable for DFS storage in the secondary location.

property secondaryFileEndpoint

secondaryFileEndpoint: string;

The endpoint URL for file storage in the secondary location.

property secondaryFileHost

secondaryFileHost: string;

The hostname with port if applicable for file storage in the secondary location.

property secondaryLocation

secondaryLocation: string;

The secondary location of the Storage Account.

property secondaryQueueEndpoint

secondaryQueueEndpoint: string;

The endpoint URL for queue storage in the secondary location.

property secondaryQueueHost

secondaryQueueHost: string;

The hostname with port if applicable for queue storage in the secondary location.

property secondaryTableEndpoint

secondaryTableEndpoint: string;

The endpoint URL for table storage in the secondary location.

property secondaryTableHost

secondaryTableHost: string;

The hostname with port if applicable for table storage in the secondary location.

property secondaryWebEndpoint

secondaryWebEndpoint: string;

The endpoint URL for web storage in the secondary location.

property secondaryWebHost

secondaryWebHost: string;

The hostname with port if applicable for web storage in the secondary location.

property tags

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

A mapping of tags to assigned to the resource.

interface GetAccountSASArgs

A collection of arguments for invoking getAccountSAS.

property connectionString

connectionString: string;

The connection string for the storage account to which this SAS applies. Typically directly from the primaryConnectionString attribute of a azure.storage.Account resource.

property expiry

expiry: string;

The expiration time and date of this SAS. Must be a valid ISO-8601 format time/date string.

property httpsOnly

httpsOnly?: undefined | false | true;

Only permit https access. If false, both http and https are permitted. Defaults to true.

property permissions

permissions: {
    add: boolean;
    create: boolean;
    delete: boolean;
    list: boolean;
    process: boolean;
    read: boolean;
    update: boolean;
    write: boolean;
};

A permissions block as defined below.

property resourceTypes

resourceTypes: {
    container: boolean;
    object: boolean;
    service: boolean;
};

A resourceTypes block as defined below.

property services

services: {
    blob: boolean;
    file: boolean;
    queue: boolean;
    table: boolean;
};

A services block as defined below.

property start

start: string;

The starting time and date of validity of this SAS. Must be a valid ISO-8601 format time/date string.

interface GetAccountSASResult

A collection of values returned by getAccountSAS.

property connectionString

connectionString: string;

property expiry

expiry: string;

property httpsOnly

httpsOnly?: undefined | false | true;

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property permissions

permissions: {
    add: boolean;
    create: boolean;
    delete: boolean;
    list: boolean;
    process: boolean;
    read: boolean;
    update: boolean;
    write: boolean;
};

property resourceTypes

resourceTypes: {
    container: boolean;
    object: boolean;
    service: boolean;
};

property sas

sas: string;

The computed Account Shared Access Signature (SAS).

property services

services: {
    blob: boolean;
    file: boolean;
    queue: boolean;
    table: boolean;
};

property start

start: string;

interface GetBlobFunctionArgs

extends CallbackFunctionArgs<BlobContext, Buffer, appservice.FunctionDefaultResponse>

property callback

callback?: Callback<BlobContext, Buffer, appservice.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<BlobContext, Buffer, appservice.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 filterPrefix

filterPrefix?: pulumi.Input<string>;

An optional prefix or suffix to filter down notifications. See https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob#trigger---blob-name-patterns for more details.

property filterSuffix

filterSuffix?: pulumi.Input<string>;

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

interface QueueArgs

The set of arguments for constructing a Queue resource.

property name

name?: pulumi.Input<string>;

The name of the storage queue. Must be unique within the storage account the queue is located.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

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

property storageAccountName

storageAccountName: pulumi.Input<string>;

Specifies the storage account in which to create the storage queue. Changing this forces a new resource to be created.

interface QueueContext

extends Context<appservice.FunctionDefaultResponse>

Data that will be passed along in the context object to the QueueContext.

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: {
    dequeueCount: number;
    expirationTime: string;
    id: string;
    insertionTime: string;
    invocationId: string;
    nextVisibleTime: string;
    popReceipt: string;
    queueTrigger: string;
    sys: {
        methodName: string;
        utcNow: string;
    };
};

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: {
    functionDirectory: string;
    functionName: string;
    invocationId: string;
};

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.

interface QueueEventSubscriptionArgs

extends CallbackFunctionAppArgs<QueueContext, any, appservice.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 callback

callback?: Callback<QueueContext, any, appservice.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<QueueContext, any, appservice.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 dataType

dataType?: “binary” | “string”;

Specify ‘string’ to get messages as a string, or a parsed object if the message is a valid JSON literal. Specify ‘binary’ for all data to be passed in as a Buffer. Default is ‘string’.

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?: QueueHostSettings;

Host settings specific to the Storage Queue 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<{
    principalId: pulumi.Input<string>;
    tenantId: pulumi.Input<string>;
    type: pulumi.Input<string>;
}>;

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

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. If not supplied, the Queue’s resource group will be used.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName]. If none of the two is supplied, the resource group of the Storage Account will be used.

property siteConfig

siteConfig?: pulumi.Input<{
    alwaysOn: pulumi.Input<boolean>;
    linuxFxVersion: pulumi.Input<string>;
    use32BitWorkerProcess: pulumi.Input<boolean>;
    websocketsEnabled: pulumi.Input<boolean>;
}>;

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 ~2.

interface QueueFunctionArgs

extends CallbackFunctionArgs<QueueContext, any, appservice.FunctionDefaultResponse>

property callback

callback?: Callback<QueueContext, any, appservice.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<QueueContext, any, appservice.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 dataType

dataType?: “binary” | “string”;

Specify ‘string’ to get messages as a string, or a parsed object if the message is a valid JSON literal. Specify ‘binary’ for all data to be passed in as a Buffer. Default is ‘string’.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

property queue

queue: Queue;

Defines the queue to trigger the function.

interface QueueHostExtensions

Host settings specific to the Storage Queue plugin.

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

property batchSize

batchSize?: undefined | number;

The number of queue messages that the Functions runtime retrieves simultaneously and processes in parallel.

property maxDequeueCount

maxDequeueCount?: undefined | number;

The number of times to try processing a message before moving it to the poison queue.

property maxPollingInterval

maxPollingInterval?: undefined | string;

The maximum interval between queue polls. Minimum is 00:00:00.100 (100 ms).

property newBatchThreshold

newBatchThreshold?: undefined | number;

Whenever the number of messages being processed concurrently gets down to this number, the runtime retrieves another batch.

property visibilityTimeout

visibilityTimeout?: undefined | string;

The time interval between retries when processing of a message fails.

interface QueueHostSettings

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 | {
    queues: QueueHostExtensions;
};

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.

interface QueueState

Input properties used for looking up and filtering Queue resources.

property name

name?: pulumi.Input<string>;

The name of the storage queue. Must be unique within the storage account the queue is located.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

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

property storageAccountName

storageAccountName?: pulumi.Input<string>;

Specifies the storage account in which to create the storage queue. Changing this forces a new resource to be created.

interface ShareArgs

The set of arguments for constructing a Share resource.

property name

name?: pulumi.Input<string>;

The name of the share. Must be unique within the storage account where the share is located.

property quota

quota?: pulumi.Input<number>;

The maximum size of the share, in gigabytes. Must be greater than 0, and less than or equal to 5 TB (5120 GB). Default is 5120.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

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

property storageAccountName

storageAccountName: pulumi.Input<string>;

Specifies the storage account in which to create the share. Changing this forces a new resource to be created.

interface ShareState

Input properties used for looking up and filtering Share resources.

property name

name?: pulumi.Input<string>;

The name of the share. Must be unique within the storage account where the share is located.

property quota

quota?: pulumi.Input<number>;

The maximum size of the share, in gigabytes. Must be greater than 0, and less than or equal to 5 TB (5120 GB). Default is 5120.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

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

property storageAccountName

storageAccountName?: pulumi.Input<string>;

Specifies the storage account in which to create the share. Changing this forces a new resource to be created.

property url

url?: pulumi.Input<string>;

The URL of the share

interface TableArgs

The set of arguments for constructing a Table resource.

property name

name?: pulumi.Input<string>;

The name of the storage table. Must be unique within the storage account the table is located.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

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

property storageAccountName

storageAccountName: pulumi.Input<string>;

Specifies the storage account in which to create the storage table. Changing this forces a new resource to be created.

interface TableInputBindingArgs

property filter

filter?: pulumi.Input<string>;

An OData filter expression for table input.

property partitionKey

partitionKey?: undefined | string;

The partition key of the table entity.

property rowKey

rowKey?: undefined | string;

The row key of the table entity.

property take

take?: pulumi.Input<number>;

The maximum number of entities to read.

interface TableState

Input properties used for looking up and filtering Table resources.

property name

name?: pulumi.Input<string>;

The name of the storage table. Must be unique within the storage account the table is located.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

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

property storageAccountName

storageAccountName?: pulumi.Input<string>;

Specifies the storage account in which to create the storage table. Changing this forces a new resource to be created.

interface ZipBlobArgs

interface ZipBlobState

type BlobCallback

type BlobCallback = appservice.Callback<BlobContext, Buffer, appservice.FunctionDefaultResponse>;

Signature of the callback that can receive blob notifications.

type QueueCallback

type QueueCallback = appservice.Callback<QueueContext, any, appservice.FunctionDefaultResponse>;

Signature of the callback that can receive queue notifications.