Bicep resource definition
The galleries/applications/versions resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
To create a Microsoft.Compute/galleries/applications/versions resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.Compute/galleries/applications/versions@2019-03-01' = {
parent: resourceSymbolicName
___location: 'string'
name: 'string'
properties: {
publishingProfile: {
enableHealthCheck: bool
endOfLifeDate: 'string'
excludeFromLatest: bool
manageActions: {
install: 'string'
remove: 'string'
update: 'string'
}
replicaCount: int
source: {
defaultConfigurationLink: 'string'
mediaLink: 'string'
}
storageAccountType: 'string'
targetRegions: [
{
name: 'string'
regionalReplicaCount: int
storageAccountType: 'string'
}
]
}
}
tags: {
{customized property}: 'string'
}
}
Property Values
Microsoft.Compute/galleries/applications/versions
| Name |
Description |
Value |
| ___location |
Resource ___location |
string (required) |
| 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: galleries/applications |
| properties |
Describes the properties of a gallery Image Version. |
GalleryApplicationVersionProperties |
| tags |
Resource tags |
Dictionary of tag names and values. See Tags in templates |
GalleryApplicationVersionProperties
GalleryApplicationVersionPublishingProfile
| Name |
Description |
Value |
| enableHealthCheck |
Optional. Whether or not this application reports health. |
bool |
| endOfLifeDate |
The end of life date of the gallery Image Version. This property can be used for decommissioning purposes. This property is updatable. |
string |
| excludeFromLatest |
If set to true, Virtual Machines deployed from the latest version of the Image Definition won't use this Image Version. |
bool |
| manageActions |
|
UserArtifactManage |
| replicaCount |
The number of replicas of the Image Version to be created per region. This property would take effect for a region when regionalReplicaCount is not specified. This property is updatable. |
int |
| source |
The source image from which the Image Version is going to be created. |
UserArtifactSource (required) |
| storageAccountType |
Specifies the storage account type to be used to store the image. This property is not updatable. |
'Standard_LRS' 'Standard_ZRS' |
| targetRegions |
The target regions where the Image Version is going to be replicated to. This property is updatable. |
TargetRegion[] |
TargetRegion
| Name |
Description |
Value |
| name |
The name of the region. |
string (required) |
| regionalReplicaCount |
The number of replicas of the Image Version to be created per region. This property is updatable. |
int |
| storageAccountType |
Specifies the storage account type to be used to store the image. This property is not updatable. |
'Standard_LRS' 'Standard_ZRS' |
UserArtifactManage
| Name |
Description |
Value |
| install |
Required. The path and arguments to install the gallery application. This is limited to 4096 characters. |
string (required) |
| remove |
Required. The path and arguments to remove the gallery application. This is limited to 4096 characters. |
string (required) |
| update |
Optional. The path and arguments to update the gallery application. If not present, then update operation will invoke remove command on the previous version and install command on the current version of the gallery application. This is limited to 4096 characters. |
string |
UserArtifactSource
| Name |
Description |
Value |
| defaultConfigurationLink |
Optional. The defaultConfigurationLink of the artifact, must be a readable storage page blob. |
string |
| mediaLink |
Required. The mediaLink of the artifact, must be a readable storage page blob. |
string (required) |
ARM template resource definition
The galleries/applications/versions resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
To create a Microsoft.Compute/galleries/applications/versions resource, add the following JSON to your template.
{
"type": "Microsoft.Compute/galleries/applications/versions",
"apiVersion": "2019-03-01",
"name": "string",
"___location": "string",
"properties": {
"publishingProfile": {
"enableHealthCheck": "bool",
"endOfLifeDate": "string",
"excludeFromLatest": "bool",
"manageActions": {
"install": "string",
"remove": "string",
"update": "string"
},
"replicaCount": "int",
"source": {
"defaultConfigurationLink": "string",
"mediaLink": "string"
},
"storageAccountType": "string",
"targetRegions": [
{
"name": "string",
"regionalReplicaCount": "int",
"storageAccountType": "string"
}
]
}
},
"tags": {
"{customized property}": "string"
}
}
Property Values
Microsoft.Compute/galleries/applications/versions
| Name |
Description |
Value |
| apiVersion |
The api version |
'2019-03-01' |
| ___location |
Resource ___location |
string (required) |
| name |
The resource name |
string (required) |
| properties |
Describes the properties of a gallery Image Version. |
GalleryApplicationVersionProperties |
| tags |
Resource tags |
Dictionary of tag names and values. See Tags in templates |
| type |
The resource type |
'Microsoft.Compute/galleries/applications/versions' |
GalleryApplicationVersionProperties
GalleryApplicationVersionPublishingProfile
| Name |
Description |
Value |
| enableHealthCheck |
Optional. Whether or not this application reports health. |
bool |
| endOfLifeDate |
The end of life date of the gallery Image Version. This property can be used for decommissioning purposes. This property is updatable. |
string |
| excludeFromLatest |
If set to true, Virtual Machines deployed from the latest version of the Image Definition won't use this Image Version. |
bool |
| manageActions |
|
UserArtifactManage |
| replicaCount |
The number of replicas of the Image Version to be created per region. This property would take effect for a region when regionalReplicaCount is not specified. This property is updatable. |
int |
| source |
The source image from which the Image Version is going to be created. |
UserArtifactSource (required) |
| storageAccountType |
Specifies the storage account type to be used to store the image. This property is not updatable. |
'Standard_LRS' 'Standard_ZRS' |
| targetRegions |
The target regions where the Image Version is going to be replicated to. This property is updatable. |
TargetRegion[] |
TargetRegion
| Name |
Description |
Value |
| name |
The name of the region. |
string (required) |
| regionalReplicaCount |
The number of replicas of the Image Version to be created per region. This property is updatable. |
int |
| storageAccountType |
Specifies the storage account type to be used to store the image. This property is not updatable. |
'Standard_LRS' 'Standard_ZRS' |
UserArtifactManage
| Name |
Description |
Value |
| install |
Required. The path and arguments to install the gallery application. This is limited to 4096 characters. |
string (required) |
| remove |
Required. The path and arguments to remove the gallery application. This is limited to 4096 characters. |
string (required) |
| update |
Optional. The path and arguments to update the gallery application. If not present, then update operation will invoke remove command on the previous version and install command on the current version of the gallery application. This is limited to 4096 characters. |
string |
UserArtifactSource
| Name |
Description |
Value |
| defaultConfigurationLink |
Optional. The defaultConfigurationLink of the artifact, must be a readable storage page blob. |
string |
| mediaLink |
Required. The mediaLink of the artifact, must be a readable storage page blob. |
string (required) |
Usage Examples
The galleries/applications/versions resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
To create a Microsoft.Compute/galleries/applications/versions resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Compute/galleries/applications/versions@2019-03-01"
name = "string"
parent_id = "string"
___location = "string"
tags = {
{customized property} = "string"
}
body = {
properties = {
publishingProfile = {
enableHealthCheck = bool
endOfLifeDate = "string"
excludeFromLatest = bool
manageActions = {
install = "string"
remove = "string"
update = "string"
}
replicaCount = int
source = {
defaultConfigurationLink = "string"
mediaLink = "string"
}
storageAccountType = "string"
targetRegions = [
{
name = "string"
regionalReplicaCount = int
storageAccountType = "string"
}
]
}
}
}
}
Property Values
Microsoft.Compute/galleries/applications/versions
| Name |
Description |
Value |
| ___location |
Resource ___location |
string (required) |
| 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: galleries/applications |
| properties |
Describes the properties of a gallery Image Version. |
GalleryApplicationVersionProperties |
| tags |
Resource tags |
Dictionary of tag names and values. |
| type |
The resource type |
"Microsoft.Compute/galleries/applications/versions@2019-03-01" |
GalleryApplicationVersionProperties
GalleryApplicationVersionPublishingProfile
| Name |
Description |
Value |
| enableHealthCheck |
Optional. Whether or not this application reports health. |
bool |
| endOfLifeDate |
The end of life date of the gallery Image Version. This property can be used for decommissioning purposes. This property is updatable. |
string |
| excludeFromLatest |
If set to true, Virtual Machines deployed from the latest version of the Image Definition won't use this Image Version. |
bool |
| manageActions |
|
UserArtifactManage |
| replicaCount |
The number of replicas of the Image Version to be created per region. This property would take effect for a region when regionalReplicaCount is not specified. This property is updatable. |
int |
| source |
The source image from which the Image Version is going to be created. |
UserArtifactSource (required) |
| storageAccountType |
Specifies the storage account type to be used to store the image. This property is not updatable. |
'Standard_LRS' 'Standard_ZRS' |
| targetRegions |
The target regions where the Image Version is going to be replicated to. This property is updatable. |
TargetRegion[] |
TargetRegion
| Name |
Description |
Value |
| name |
The name of the region. |
string (required) |
| regionalReplicaCount |
The number of replicas of the Image Version to be created per region. This property is updatable. |
int |
| storageAccountType |
Specifies the storage account type to be used to store the image. This property is not updatable. |
'Standard_LRS' 'Standard_ZRS' |
UserArtifactManage
| Name |
Description |
Value |
| install |
Required. The path and arguments to install the gallery application. This is limited to 4096 characters. |
string (required) |
| remove |
Required. The path and arguments to remove the gallery application. This is limited to 4096 characters. |
string (required) |
| update |
Optional. The path and arguments to update the gallery application. If not present, then update operation will invoke remove command on the previous version and install command on the current version of the gallery application. This is limited to 4096 characters. |
string |
UserArtifactSource
| Name |
Description |
Value |
| defaultConfigurationLink |
Optional. The defaultConfigurationLink of the artifact, must be a readable storage page blob. |
string |
| mediaLink |
Required. The mediaLink of the artifact, must be a readable storage page blob. |
string (required) |
Usage Examples
A basic example of deploying Gallery Application Version.
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 = "westus"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
___location = var.___location
}
resource "azapi_resource" "gallery" {
type = "Microsoft.Compute/galleries@2022-03-03"
parent_id = azapi_resource.resourceGroup.id
name = "${var.resource_name}sig"
___location = var.___location
body = {
properties = {
description = ""
}
}
}
resource "azapi_resource" "storageAccount" {
type = "Microsoft.Storage/storageAccounts@2023-05-01"
parent_id = azapi_resource.resourceGroup.id
name = "${var.resource_name}acc"
___location = var.___location
body = {
kind = "StorageV2"
properties = {
accessTier = "Hot"
allowBlobPublicAccess = true
allowCrossTenantReplication = false
allowSharedKeyAccess = true
defaultToOAuthAuthentication = false
dnsEndpointType = "Standard"
encryption = {
keySource = "Microsoft.Storage"
services = {
queue = {
keyType = "Service"
}
table = {
keyType = "Service"
}
}
}
isHnsEnabled = false
isLocalUserEnabled = true
isNfsV3Enabled = false
isSftpEnabled = false
minimumTlsVersion = "TLS1_2"
networkAcls = {
bypass = "AzureServices"
defaultAction = "Allow"
ipRules = []
resourceAccessRules = []
virtualNetworkRules = []
}
publicNetworkAccess = "Enabled"
supportsHttpsTrafficOnly = true
}
sku = {
name = "Standard_LRS"
}
}
}
resource "azapi_resource" "application" {
type = "Microsoft.Compute/galleries/applications@2022-03-03"
parent_id = azapi_resource.gallery.id
name = "${var.resource_name}-app"
___location = var.___location
body = {
properties = {
supportedOSType = "Linux"
}
}
}
resource "azapi_resource" "container" {
type = "Microsoft.Storage/storageAccounts/blobServices/containers@2023-05-01"
parent_id = "${azapi_resource.storageAccount.id}/blobServices/default"
name = "mycontainer"
body = {
properties = {
publicAccess = "Blob"
}
}
}
resource "azapi_resource" "version" {
type = "Microsoft.Compute/galleries/applications/versions@2022-03-03"
parent_id = azapi_resource.application.id
name = "0.0.1"
___location = var.___location
body = {
properties = {
publishingProfile = {
enableHealthCheck = false
excludeFromLatest = false
manageActions = {
install = "[install command]"
remove = "[remove command]"
update = ""
}
source = {
defaultConfigurationLink = ""
mediaLink = "https://${azapi_resource.storageAccount.name}.blob.core.windows.net/mycontainer/myblob"
}
targetRegions = [{
name = var.___location
regionalReplicaCount = 1
storageAccountType = "Standard_LRS"
}]
}
safetyProfile = {
allowDeletionOfReplicatedLocations = true
}
}
}
depends_on = [azapi_resource.container]
}