Microsoft.App managedEnvironments/storages 2022-01-01-preview

Bicep resource definition

The managedEnvironments/storages resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.App/managedEnvironments/storages resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.App/managedEnvironments/storages@2022-01-01-preview' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    azureFile: {
      accessMode: 'string'
      accountKey: 'string'
      accountName: 'string'
      shareName: 'string'
    }
  }
}

Property Values

Microsoft.App/managedEnvironments/storages

Name Description Value
name The resource name string (required)
parent In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource.

For more information, see Child resource outside parent resource.
Symbolic name for resource of type: managedEnvironments
properties Storage properties ManagedEnvironmentStorageProperties

AzureFileProperties

Name Description Value
accessMode Access mode for storage 'ReadOnly'
'ReadWrite'
accountKey Storage account key for azure file. string

Constraints:
Sensitive value. Pass in as a secure parameter.
accountName Storage account name for azure file. string
shareName Azure file share name. string

ManagedEnvironmentStorageProperties

Name Description Value
azureFile Azure file properties AzureFileProperties

Usage Examples

Bicep Samples

A basic example of deploying Container App Environment Storage.

param resourceName string = 'acctest0001'
param location string = 'westeurope'

resource managedEnvironment 'Microsoft.App/managedEnvironments@2022-03-01' = {
  name: resourceName
  location: location
  properties: {
    appLogsConfiguration: {
      destination: 'log-analytics'
      logAnalyticsConfiguration: {
        customerId: workspace.properties.customerId
        sharedKey: workspace.listKeys().primarySharedKey
      }
    }
    vnetConfiguration: {}
  }
}

resource storageAccount 'Microsoft.Storage/storageAccounts@2021-09-01' = {
  name: resourceName
  location: location
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'
  properties: {
    accessTier: 'Hot'
    allowBlobPublicAccess: true
    allowCrossTenantReplication: true
    allowSharedKeyAccess: true
    defaultToOAuthAuthentication: false
    encryption: {
      keySource: 'Microsoft.Storage'
      services: {
        queue: {
          keyType: 'Service'
        }
        table: {
          keyType: 'Service'
        }
      }
    }
    isHnsEnabled: false
    isNfsV3Enabled: false
    isSftpEnabled: false
    minimumTlsVersion: 'TLS1_2'
    networkAcls: {
      defaultAction: 'Allow'
    }
    publicNetworkAccess: 'Enabled'
    supportsHttpsTrafficOnly: true
  }
  tags: {
    environment: 'accTest'
  }
}

resource workspace 'Microsoft.OperationalInsights/workspaces@2022-10-01' = {
  name: resourceName
  location: location
  properties: {
    features: {
      disableLocalAuth: false
      enableLogAccessUsingOnlyResourcePermissions: true
    }
    publicNetworkAccessForIngestion: 'Enabled'
    publicNetworkAccessForQuery: 'Enabled'
    retentionInDays: 30
    sku: {
      name: 'PerGB2018'
    }
    workspaceCapping: {
      dailyQuotaGb: -1
    }
  }
}

resource storage 'Microsoft.App/managedEnvironments/storages@2022-03-01' = {
  name: resourceName
  parent: managedEnvironment
  properties: {
    azureFile: {
      accessMode: 'ReadWrite'
      accountKey: storageAccount.listKeys().keys[0].value
      accountName: storageAccount.name
      shareName: 'testsharehkez7'
    }
  }
}

ARM template resource definition

The managedEnvironments/storages resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.App/managedEnvironments/storages resource, add the following JSON to your template.

{
  "type": "Microsoft.App/managedEnvironments/storages",
  "apiVersion": "2022-01-01-preview",
  "name": "string",
  "properties": {
    "azureFile": {
      "accessMode": "string",
      "accountKey": "string",
      "accountName": "string",
      "shareName": "string"
    }
  }
}

Property Values

Microsoft.App/managedEnvironments/storages

Name Description Value
apiVersion The api version '2022-01-01-preview'
name The resource name string (required)
properties Storage properties ManagedEnvironmentStorageProperties
type The resource type 'Microsoft.App/managedEnvironments/storages'

AzureFileProperties

Name Description Value
accessMode Access mode for storage 'ReadOnly'
'ReadWrite'
accountKey Storage account key for azure file. string

Constraints:
Sensitive value. Pass in as a secure parameter.
accountName Storage account name for azure file. string
shareName Azure file share name. string

ManagedEnvironmentStorageProperties

Name Description Value
azureFile Azure file properties AzureFileProperties

Usage Examples

Terraform (AzAPI provider) resource definition

The managedEnvironments/storages resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.App/managedEnvironments/storages resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/managedEnvironments/storages@2022-01-01-preview"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      azureFile = {
        accessMode = "string"
        accountKey = "string"
        accountName = "string"
        shareName = "string"
      }
    }
  }
}

Property Values

Microsoft.App/managedEnvironments/storages

Name Description Value
name The resource name string (required)
parent_id The ID of the resource that is the parent for this resource. ID for resource of type: managedEnvironments
properties Storage properties ManagedEnvironmentStorageProperties
type The resource type "Microsoft.App/managedEnvironments/storages@2022-01-01-preview"

AzureFileProperties

Name Description Value
accessMode Access mode for storage 'ReadOnly'
'ReadWrite'
accountKey Storage account key for azure file. string

Constraints:
Sensitive value. Pass in as a secure parameter.
accountName Storage account name for azure file. string
shareName Azure file share name. string

ManagedEnvironmentStorageProperties

Name Description Value
azureFile Azure file properties AzureFileProperties

Usage Examples

Terraform Samples

A basic example of deploying Container App Environment Storage.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "workspace" {
  type      = "Microsoft.OperationalInsights/workspaces@2022-10-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      features = {
        disableLocalAuth                            = false
        enableLogAccessUsingOnlyResourcePermissions = true
      }
      publicNetworkAccessForIngestion = "Enabled"
      publicNetworkAccessForQuery     = "Enabled"
      retentionInDays                 = 30
      sku = {
        name = "PerGB2018"
      }
      workspaceCapping = {
        dailyQuotaGb = -1
      }
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "storageAccount" {
  type      = "Microsoft.Storage/storageAccounts@2021-09-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    kind = "StorageV2"
    properties = {
      accessTier                   = "Hot"
      allowBlobPublicAccess        = true
      allowCrossTenantReplication  = true
      allowSharedKeyAccess         = true
      defaultToOAuthAuthentication = false
      encryption = {
        keySource = "Microsoft.Storage"
        services = {
          queue = {
            keyType = "Service"
          }
          table = {
            keyType = "Service"
          }
        }
      }
      isHnsEnabled      = false
      isNfsV3Enabled    = false
      isSftpEnabled     = false
      minimumTlsVersion = "TLS1_2"
      networkAcls = {
        defaultAction = "Allow"
      }
      publicNetworkAccess      = "Enabled"
      supportsHttpsTrafficOnly = true
    }
    sku = {
      name = "Standard_LRS"
    }
    tags = {
      environment = "accTest"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

data "azapi_resource_action" "sharedKeys" {
  type                   = "Microsoft.OperationalInsights/workspaces@2020-08-01"
  resource_id            = azapi_resource.workspace.id
  action                 = "sharedKeys"
  response_export_values = ["*"]
}

resource "azapi_resource" "managedEnvironment" {
  type      = "Microsoft.App/managedEnvironments@2022-03-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      appLogsConfiguration = {
        destination = "log-analytics"
        logAnalyticsConfiguration = {
          customerId = azapi_resource.workspace.output.properties.customerId
          sharedKey  = data.azapi_resource_action.sharedKeys.output.primarySharedKey
        }
      }
      vnetConfiguration = {
      }
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

data "azapi_resource_action" "listKeys" {
  type                   = "Microsoft.Storage/storageAccounts@2021-09-01"
  resource_id            = azapi_resource.storageAccount.id
  action                 = "listKeys"
  response_export_values = ["*"]
}

resource "azapi_resource" "storage" {
  type      = "Microsoft.App/managedEnvironments/storages@2022-03-01"
  parent_id = azapi_resource.managedEnvironment.id
  name      = var.resource_name
  body = {
    properties = {
      azureFile = {
        accessMode  = "ReadWrite"
        accountKey  = data.azapi_resource_action.listKeys.output.keys[0].value
        accountName = azapi_resource.storageAccount.output.name
        shareName   = "testsharehkez7"
      }
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}