Module storage

@pulumi/azure > storage

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: {
        ipRules: ["100.0.0.1"],
        virtualNetworkSubnetIds: [testSubnet.id],
    },
    resourceGroupName: testrg.name,
    tags: {
        environment: "staging",
    },
});

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

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.

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 custom_domain 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[];
    ipRules: string[];
    virtualNetworkSubnetIds: string[];
} | undefined>;

A network_rules 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",
});

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

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.

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 source_uri 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 source_uri 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, void>

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, void>;

property urn

urn: Output<URN>;

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

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,
});

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 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 onBlobEvent

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

Creates a new subscription to events fired from this Topic to the handler provided, along with options to control the behavior of the subscription.

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,
});

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

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, Buffer, void>

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, Buffer, void>;

property urn

urn: Output<URN>;

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

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,
});

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

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.

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,
});

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

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

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.

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>

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;

function getAccountSAS

getAccountSAS(args: GetAccountSASArgs, opts?: pulumi.InvokeOptions): Promise<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;

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 custom_domain 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>[]>;
    ipRules: pulumi.Input<pulumi.Input<string>[]>;
    virtualNetworkSubnetIds: pulumi.Input<pulumi.Input<string>[]>;
}>;

A network_rules 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 custom_domain 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>[]>;
    ipRules: pulumi.Input<pulumi.Input<string>[]>;
    virtualNetworkSubnetIds: pulumi.Input<pulumi.Input<string>[]>;
}>;

A network_rules 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 source_uri 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 source_uri 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<void>

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: {
    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 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 source_uri 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 source_uri 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 custom_domain 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 primary_connection_string attribute of a terraform created azurerm_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 resource_types 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 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<void>

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 QueueHostSettings

extends HostSettings

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 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: {
        batchSize: undefined | number;
        maxDequeueCount: undefined | number;
        maxPollingInterval: undefined | string;
        newBatchThreshold: undefined | number;
        visibilityTimeout: undefined | string;
    };
};

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 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, void>;

Signature of the callback that can receive blob notifications.

type BlobEventSubscriptionArgs

type BlobEventSubscriptionArgs = util.Overwrite<appservice.CallbackFunctionAppArgs<BlobContext, Buffer, void>, {
    filterPrefix: pulumi.Input<string>;
    filterSuffix: pulumi.Input<string>;
    location: pulumi.Input<string>;
    resourceGroup: core.ResourceGroup;
    resourceGroupName: pulumi.Input<string>;
}>;

type QueueCallback

type QueueCallback = appservice.Callback<QueueContext, Buffer, void>;

Signature of the callback that can receive queue notifications.

type QueueEventSubscriptionArgs

type QueueEventSubscriptionArgs = util.Overwrite<appservice.CallbackFunctionAppArgs<QueueContext, Buffer, void>, {
    hostSettings: QueueHostSettings;
    location: pulumi.Input<string>;
    resourceGroup: core.ResourceGroup;
    resourceGroupName: pulumi.Input<string>;
}>;