Note: Azure Spring Apps (Microsoft.AppPlatform/Spring) is now deprecated and will be retired on 2028-05-31. See https://aka.ms/asaretirement for more information.
Bicep resource definition
The Spring resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
Usage Examples
Bicep Samples
A basic example of deploying Azure Spring Cloud Service.
param resourceName string = 'acctest0001'
param location string = 'westeurope'
resource spring 'Microsoft.AppPlatform/Spring@2023-05-01-preview' = {
name: resourceName
location: location
sku: {
name: 'S0'
}
properties: {
zoneRedundant: false
}
}
Azure Quickstart Samples
The following Azure Quickstart templates contain Bicep samples for deploying this resource type.
To create a Microsoft.AppPlatform/Spring resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.AppPlatform/Spring@2023-12-01' = {
location: 'string'
name: 'string'
properties: {
marketplaceResource: {
plan: 'string'
product: 'string'
publisher: 'string'
}
networkProfile: {
appNetworkResourceGroup: 'string'
appSubnetId: 'string'
ingressConfig: {
readTimeoutInSeconds: int
}
outboundType: 'string'
serviceCidr: 'string'
serviceRuntimeNetworkResourceGroup: 'string'
serviceRuntimeSubnetId: 'string'
}
vnetAddons: {
dataPlanePublicEndpoint: bool
logStreamPublicEndpoint: bool
}
zoneRedundant: bool
}
sku: {
capacity: int
name: 'string'
tier: 'string'
}
tags: {
{customized property}: 'string'
}
}
Property Values
| Name |
Description |
Value |
| location |
The GEO location of the resource. |
string |
| name |
The resource name |
string
Constraints: Pattern = ^[a-z][a-z0-9-]*[a-z0-9]$ (required) |
| properties |
Properties of the Service resource |
ClusterResourceProperties |
| sku |
Sku of the Service resource |
Sku |
| tags |
Resource tags |
Dictionary of tag names and values. See Tags in templates |
ClusterResourceProperties
| Name |
Description |
Value |
| marketplaceResource |
Purchasing 3rd party product of the Service resource. |
MarketplaceResource |
| networkProfile |
Network profile of the Service |
NetworkProfile |
| vnetAddons |
Additional Service settings in vnet injection instance |
ServiceVNetAddons |
| zoneRedundant |
|
bool |
IngressConfig
| Name |
Description |
Value |
| readTimeoutInSeconds |
Ingress read time out in seconds. |
int |
MarketplaceResource
| Name |
Description |
Value |
| plan |
The plan id of the 3rd Party Artifact that is being procured. |
string |
| product |
The 3rd Party artifact that is being procured. |
string |
| publisher |
The publisher id of the 3rd Party Artifact that is being bought. |
string |
NetworkProfile
| Name |
Description |
Value |
| appNetworkResourceGroup |
Name of the resource group containing network resources for customer apps in Azure Spring Apps |
string |
| appSubnetId |
Fully qualified resource Id of the subnet to host customer apps in Azure Spring Apps |
string |
| ingressConfig |
Ingress configuration payload for Azure Spring Apps resource. |
IngressConfig |
| outboundType |
The egress traffic type of Azure Spring Apps VNet instances. |
string |
| serviceCidr |
Azure Spring Apps service reserved CIDR |
string |
| serviceRuntimeNetworkResourceGroup |
Name of the resource group containing network resources of Azure Spring Apps Service Runtime |
string |
| serviceRuntimeSubnetId |
Fully qualified resource Id of the subnet to host Azure Spring Apps Service Runtime |
string |
ServiceVNetAddons
| Name |
Description |
Value |
| dataPlanePublicEndpoint |
Indicates whether the data plane components(log stream, app connect, remote debugging) in vnet injection instance could be accessed from internet. |
bool |
| logStreamPublicEndpoint |
Indicates whether the log stream in vnet injection instance could be accessed from internet. |
bool |
Sku
| Name |
Description |
Value |
| capacity |
Current capacity of the target resource |
int |
| name |
Name of the Sku |
string |
| tier |
Tier of the Sku |
string |
ARM template resource definition
The Spring resource type can be deployed with operations that target:
Usage Examples
Azure Quickstart Templates
The following Azure Quickstart templates deploy this resource type.
To create a Microsoft.AppPlatform/Spring resource, add the following JSON to your template.
{
"type": "Microsoft.AppPlatform/Spring",
"apiVersion": "2023-12-01",
"name": "string",
"location": "string",
"properties": {
"marketplaceResource": {
"plan": "string",
"product": "string",
"publisher": "string"
},
"networkProfile": {
"appNetworkResourceGroup": "string",
"appSubnetId": "string",
"ingressConfig": {
"readTimeoutInSeconds": "int"
},
"outboundType": "string",
"serviceCidr": "string",
"serviceRuntimeNetworkResourceGroup": "string",
"serviceRuntimeSubnetId": "string"
},
"vnetAddons": {
"dataPlanePublicEndpoint": "bool",
"logStreamPublicEndpoint": "bool"
},
"zoneRedundant": "bool"
},
"sku": {
"capacity": "int",
"name": "string",
"tier": "string"
},
"tags": {
"{customized property}": "string"
}
}
Property Values
| Name |
Description |
Value |
| apiVersion |
The api version |
'2023-12-01' |
| location |
The GEO location of the resource. |
string |
| name |
The resource name |
string
Constraints: Pattern = ^[a-z][a-z0-9-]*[a-z0-9]$ (required) |
| properties |
Properties of the Service resource |
ClusterResourceProperties |
| sku |
Sku of the Service resource |
Sku |
| tags |
Resource tags |
Dictionary of tag names and values. See Tags in templates |
| type |
The resource type |
'Microsoft.AppPlatform/Spring' |
ClusterResourceProperties
| Name |
Description |
Value |
| marketplaceResource |
Purchasing 3rd party product of the Service resource. |
MarketplaceResource |
| networkProfile |
Network profile of the Service |
NetworkProfile |
| vnetAddons |
Additional Service settings in vnet injection instance |
ServiceVNetAddons |
| zoneRedundant |
|
bool |
IngressConfig
| Name |
Description |
Value |
| readTimeoutInSeconds |
Ingress read time out in seconds. |
int |
MarketplaceResource
| Name |
Description |
Value |
| plan |
The plan id of the 3rd Party Artifact that is being procured. |
string |
| product |
The 3rd Party artifact that is being procured. |
string |
| publisher |
The publisher id of the 3rd Party Artifact that is being bought. |
string |
NetworkProfile
| Name |
Description |
Value |
| appNetworkResourceGroup |
Name of the resource group containing network resources for customer apps in Azure Spring Apps |
string |
| appSubnetId |
Fully qualified resource Id of the subnet to host customer apps in Azure Spring Apps |
string |
| ingressConfig |
Ingress configuration payload for Azure Spring Apps resource. |
IngressConfig |
| outboundType |
The egress traffic type of Azure Spring Apps VNet instances. |
string |
| serviceCidr |
Azure Spring Apps service reserved CIDR |
string |
| serviceRuntimeNetworkResourceGroup |
Name of the resource group containing network resources of Azure Spring Apps Service Runtime |
string |
| serviceRuntimeSubnetId |
Fully qualified resource Id of the subnet to host Azure Spring Apps Service Runtime |
string |
ServiceVNetAddons
| Name |
Description |
Value |
| dataPlanePublicEndpoint |
Indicates whether the data plane components(log stream, app connect, remote debugging) in vnet injection instance could be accessed from internet. |
bool |
| logStreamPublicEndpoint |
Indicates whether the log stream in vnet injection instance could be accessed from internet. |
bool |
Sku
| Name |
Description |
Value |
| capacity |
Current capacity of the target resource |
int |
| name |
Name of the Sku |
string |
| tier |
Tier of the Sku |
string |
The Spring resource type can be deployed with operations that target:
- Resource groups
For a list of changed properties in each API version, see change log.
Usage Examples
A basic example of deploying Azure Spring Cloud Service.
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" "Spring" {
type = "Microsoft.AppPlatform/Spring@2023-05-01-preview"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
zoneRedundant = false
}
sku = {
name = "S0"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
To create a Microsoft.AppPlatform/Spring resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.AppPlatform/Spring@2023-12-01"
name = "string"
parent_id = "string"
location = "string"
tags = {
{customized property} = "string"
}
body = {
properties = {
marketplaceResource = {
plan = "string"
product = "string"
publisher = "string"
}
networkProfile = {
appNetworkResourceGroup = "string"
appSubnetId = "string"
ingressConfig = {
readTimeoutInSeconds = int
}
outboundType = "string"
serviceCidr = "string"
serviceRuntimeNetworkResourceGroup = "string"
serviceRuntimeSubnetId = "string"
}
vnetAddons = {
dataPlanePublicEndpoint = bool
logStreamPublicEndpoint = bool
}
zoneRedundant = bool
}
sku = {
capacity = int
name = "string"
tier = "string"
}
}
}
Property Values
| Name |
Description |
Value |
| location |
The GEO location of the resource. |
string |
| name |
The resource name |
string
Constraints: Pattern = ^[a-z][a-z0-9-]*[a-z0-9]$ (required) |
| properties |
Properties of the Service resource |
ClusterResourceProperties |
| sku |
Sku of the Service resource |
Sku |
| tags |
Resource tags |
Dictionary of tag names and values. |
| type |
The resource type |
"Microsoft.AppPlatform/Spring@2023-12-01" |
ClusterResourceProperties
| Name |
Description |
Value |
| marketplaceResource |
Purchasing 3rd party product of the Service resource. |
MarketplaceResource |
| networkProfile |
Network profile of the Service |
NetworkProfile |
| vnetAddons |
Additional Service settings in vnet injection instance |
ServiceVNetAddons |
| zoneRedundant |
|
bool |
IngressConfig
| Name |
Description |
Value |
| readTimeoutInSeconds |
Ingress read time out in seconds. |
int |
MarketplaceResource
| Name |
Description |
Value |
| plan |
The plan id of the 3rd Party Artifact that is being procured. |
string |
| product |
The 3rd Party artifact that is being procured. |
string |
| publisher |
The publisher id of the 3rd Party Artifact that is being bought. |
string |
NetworkProfile
| Name |
Description |
Value |
| appNetworkResourceGroup |
Name of the resource group containing network resources for customer apps in Azure Spring Apps |
string |
| appSubnetId |
Fully qualified resource Id of the subnet to host customer apps in Azure Spring Apps |
string |
| ingressConfig |
Ingress configuration payload for Azure Spring Apps resource. |
IngressConfig |
| outboundType |
The egress traffic type of Azure Spring Apps VNet instances. |
string |
| serviceCidr |
Azure Spring Apps service reserved CIDR |
string |
| serviceRuntimeNetworkResourceGroup |
Name of the resource group containing network resources of Azure Spring Apps Service Runtime |
string |
| serviceRuntimeSubnetId |
Fully qualified resource Id of the subnet to host Azure Spring Apps Service Runtime |
string |
ServiceVNetAddons
| Name |
Description |
Value |
| dataPlanePublicEndpoint |
Indicates whether the data plane components(log stream, app connect, remote debugging) in vnet injection instance could be accessed from internet. |
bool |
| logStreamPublicEndpoint |
Indicates whether the log stream in vnet injection instance could be accessed from internet. |
bool |
Sku
| Name |
Description |
Value |
| capacity |
Current capacity of the target resource |
int |
| name |
Name of the Sku |
string |
| tier |
Tier of the Sku |
string |