Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Bicep resource definition
The services/projects resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Usage Examples
Bicep Samples
A basic example of deploying Azure Database Migration Project instance.
param resourceName string = 'acctest0001'
param location string = 'westeurope'
resource service 'Microsoft.DataMigration/services@2018-04-19' = {
name: resourceName
location: location
sku: {
name: 'Standard_1vCores'
}
kind: 'Cloud'
properties: {
virtualSubnetId: subnet.id
}
}
resource virtualNetwork 'Microsoft.Network/virtualNetworks@2022-07-01' = {
name: resourceName
location: location
properties: {
addressSpace: {
addressPrefixes: [
'10.0.0.0/16'
]
}
dhcpOptions: {
dnsServers: []
}
subnets: []
}
}
resource project 'Microsoft.DataMigration/services/projects@2018-04-19' = {
name: resourceName
location: location
parent: service
properties: {
sourcePlatform: 'SQL'
targetPlatform: 'SQLDB'
}
}
resource subnet 'Microsoft.Network/virtualNetworks/subnets@2022-07-01' = {
name: resourceName
parent: virtualNetwork
properties: {
addressPrefix: '10.0.1.0/24'
delegations: []
privateEndpointNetworkPolicies: 'Enabled'
privateLinkServiceNetworkPolicies: 'Enabled'
serviceEndpointPolicies: []
serviceEndpoints: []
}
}
Resource format
To create a Microsoft.DataMigration/services/projects resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.DataMigration/services/projects@2018-04-19' = {
parent: resourceSymbolicName
location: 'string'
name: 'string'
properties: {
databasesInfo: [
{
sourceDatabaseName: 'string'
}
]
sourceConnectionInfo: {
password: 'string'
userName: 'string'
type: 'string'
// For remaining properties, see ConnectionInfo objects
}
sourcePlatform: 'string'
targetConnectionInfo: {
password: 'string'
userName: 'string'
type: 'string'
// For remaining properties, see ConnectionInfo objects
}
targetPlatform: 'string'
}
tags: {
{customized property}: 'string'
}
}
ConnectionInfo objects
Set the type property to specify the type of object.
For MiSqlConnectionInfo, use:
{
managedInstanceResourceId: 'string'
type: 'MiSqlConnectionInfo'
}
For MySqlConnectionInfo, use:
{
port: int
serverName: 'string'
type: 'MySqlConnectionInfo'
}
For PostgreSqlConnectionInfo, use:
{
databaseName: 'string'
port: int
serverName: 'string'
type: 'PostgreSqlConnectionInfo'
}
For SqlConnectionInfo, use:
{
additionalSettings: 'string'
authentication: 'string'
dataSource: 'string'
encryptConnection: bool
platform: 'string'
trustServerCertificate: bool
type: 'SqlConnectionInfo'
}
Property Values
Microsoft.DataMigration/services/projects
| 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: services |
| properties | Project properties | ProjectProperties |
| tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
ConnectionInfo
| Name | Description | Value |
|---|---|---|
| password | Password credential. | string |
| type | Set to 'MiSqlConnectionInfo' for type MiSqlConnectionInfo. Set to 'MySqlConnectionInfo' for type MySqlConnectionInfo. Set to 'PostgreSqlConnectionInfo' for type PostgreSqlConnectionInfo. Set to 'SqlConnectionInfo' for type SqlConnectionInfo. | 'MiSqlConnectionInfo' 'MySqlConnectionInfo' 'PostgreSqlConnectionInfo' 'SqlConnectionInfo' (required) |
| userName | User name | string |
DatabaseInfo
| Name | Description | Value |
|---|---|---|
| sourceDatabaseName | Name of the database | string (required) |
MiSqlConnectionInfo
| Name | Description | Value |
|---|---|---|
| managedInstanceResourceId | Resource id for Azure SQL database Managed instance | string (required) |
| type | Type of connection info | 'MiSqlConnectionInfo' (required) |
MySqlConnectionInfo
| Name | Description | Value |
|---|---|---|
| port | Port for Server | int (required) |
| serverName | Name of the server | string (required) |
| type | Type of connection info | 'MySqlConnectionInfo' (required) |
PostgreSqlConnectionInfo
| Name | Description | Value |
|---|---|---|
| databaseName | Name of the database | string |
| port | Port for Server | int (required) |
| serverName | Name of the server | string (required) |
| type | Type of connection info | 'PostgreSqlConnectionInfo' (required) |
ProjectProperties
| Name | Description | Value |
|---|---|---|
| databasesInfo | List of DatabaseInfo | DatabaseInfo[] |
| sourceConnectionInfo | Information for connecting to source | ConnectionInfo |
| sourcePlatform | Source platform for the project | 'SQL' 'Unknown' (required) |
| targetConnectionInfo | Information for connecting to target | ConnectionInfo |
| targetPlatform | Target platform for the project | 'SQLDB' 'Unknown' (required) |
SqlConnectionInfo
| Name | Description | Value |
|---|---|---|
| additionalSettings | Additional connection settings | string |
| authentication | Authentication type to use for connection | 'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| dataSource | Data source in the format Protocol:MachineName\SQLServerInstanceName,PortNumber | string (required) |
| encryptConnection | Whether to encrypt the connection | bool |
| platform | Server platform type for connection | 'SqlOnPrem' |
| trustServerCertificate | Whether to trust the server certificate | bool |
| type | Type of connection info | 'SqlConnectionInfo' (required) |
TrackedResourceTags
| Name | Description | Value |
|---|
ARM template resource definition
The services/projects resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands For a list of changed properties in each API version, see change log.
Usage Examples
Resource format
To create a Microsoft.DataMigration/services/projects resource, add the following JSON to your template.
{
"type": "Microsoft.DataMigration/services/projects",
"apiVersion": "2018-04-19",
"name": "string",
"location": "string",
"properties": {
"databasesInfo": [
{
"sourceDatabaseName": "string"
}
],
"sourceConnectionInfo": {
"password": "string",
"userName": "string",
"type": "string"
// For remaining properties, see ConnectionInfo objects
},
"sourcePlatform": "string",
"targetConnectionInfo": {
"password": "string",
"userName": "string",
"type": "string"
// For remaining properties, see ConnectionInfo objects
},
"targetPlatform": "string"
},
"tags": {
"{customized property}": "string"
}
}
ConnectionInfo objects
Set the type property to specify the type of object.
For MiSqlConnectionInfo, use:
{
"managedInstanceResourceId": "string",
"type": "MiSqlConnectionInfo"
}
For MySqlConnectionInfo, use:
{
"port": "int",
"serverName": "string",
"type": "MySqlConnectionInfo"
}
For PostgreSqlConnectionInfo, use:
{
"databaseName": "string",
"port": "int",
"serverName": "string",
"type": "PostgreSqlConnectionInfo"
}
For SqlConnectionInfo, use:
{
"additionalSettings": "string",
"authentication": "string",
"dataSource": "string",
"encryptConnection": "bool",
"platform": "string",
"trustServerCertificate": "bool",
"type": "SqlConnectionInfo"
}
Property Values
Microsoft.DataMigration/services/projects
| Name | Description | Value |
|---|---|---|
| apiVersion | The api version | '2018-04-19' |
| location | Resource location. | string (required) |
| name | The resource name | string (required) |
| properties | Project properties | ProjectProperties |
| tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
| type | The resource type | 'Microsoft.DataMigration/services/projects' |
ConnectionInfo
| Name | Description | Value |
|---|---|---|
| password | Password credential. | string |
| type | Set to 'MiSqlConnectionInfo' for type MiSqlConnectionInfo. Set to 'MySqlConnectionInfo' for type MySqlConnectionInfo. Set to 'PostgreSqlConnectionInfo' for type PostgreSqlConnectionInfo. Set to 'SqlConnectionInfo' for type SqlConnectionInfo. | 'MiSqlConnectionInfo' 'MySqlConnectionInfo' 'PostgreSqlConnectionInfo' 'SqlConnectionInfo' (required) |
| userName | User name | string |
DatabaseInfo
| Name | Description | Value |
|---|---|---|
| sourceDatabaseName | Name of the database | string (required) |
MiSqlConnectionInfo
| Name | Description | Value |
|---|---|---|
| managedInstanceResourceId | Resource id for Azure SQL database Managed instance | string (required) |
| type | Type of connection info | 'MiSqlConnectionInfo' (required) |
MySqlConnectionInfo
| Name | Description | Value |
|---|---|---|
| port | Port for Server | int (required) |
| serverName | Name of the server | string (required) |
| type | Type of connection info | 'MySqlConnectionInfo' (required) |
PostgreSqlConnectionInfo
| Name | Description | Value |
|---|---|---|
| databaseName | Name of the database | string |
| port | Port for Server | int (required) |
| serverName | Name of the server | string (required) |
| type | Type of connection info | 'PostgreSqlConnectionInfo' (required) |
ProjectProperties
| Name | Description | Value |
|---|---|---|
| databasesInfo | List of DatabaseInfo | DatabaseInfo[] |
| sourceConnectionInfo | Information for connecting to source | ConnectionInfo |
| sourcePlatform | Source platform for the project | 'SQL' 'Unknown' (required) |
| targetConnectionInfo | Information for connecting to target | ConnectionInfo |
| targetPlatform | Target platform for the project | 'SQLDB' 'Unknown' (required) |
SqlConnectionInfo
| Name | Description | Value |
|---|---|---|
| additionalSettings | Additional connection settings | string |
| authentication | Authentication type to use for connection | 'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| dataSource | Data source in the format Protocol:MachineName\SQLServerInstanceName,PortNumber | string (required) |
| encryptConnection | Whether to encrypt the connection | bool |
| platform | Server platform type for connection | 'SqlOnPrem' |
| trustServerCertificate | Whether to trust the server certificate | bool |
| type | Type of connection info | 'SqlConnectionInfo' (required) |
TrackedResourceTags
| Name | Description | Value |
|---|
Terraform (AzAPI provider) resource definition
The services/projects 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
Terraform Samples
A basic example of deploying Azure Database Migration Project instance.
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" "virtualNetwork" {
type = "Microsoft.Network/virtualNetworks@2022-07-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
addressSpace = {
addressPrefixes = [
"10.0.0.0/16",
]
}
dhcpOptions = {
dnsServers = [
]
}
subnets = [
]
}
}
schema_validation_enabled = false
response_export_values = ["*"]
lifecycle {
ignore_changes = [body.properties.subnets]
}
}
resource "azapi_resource" "subnet" {
type = "Microsoft.Network/virtualNetworks/subnets@2022-07-01"
parent_id = azapi_resource.virtualNetwork.id
name = var.resource_name
body = {
properties = {
addressPrefix = "10.0.1.0/24"
delegations = [
]
privateEndpointNetworkPolicies = "Enabled"
privateLinkServiceNetworkPolicies = "Enabled"
serviceEndpointPolicies = [
]
serviceEndpoints = [
]
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "service" {
type = "Microsoft.DataMigration/services@2018-04-19"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
kind = "Cloud"
properties = {
virtualSubnetId = azapi_resource.subnet.id
}
sku = {
name = "Standard_1vCores"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "project" {
type = "Microsoft.DataMigration/services/projects@2018-04-19"
parent_id = azapi_resource.service.id
name = var.resource_name
location = var.location
body = {
properties = {
sourcePlatform = "SQL"
targetPlatform = "SQLDB"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
Resource format
To create a Microsoft.DataMigration/services/projects resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.DataMigration/services/projects@2018-04-19"
name = "string"
parent_id = "string"
location = "string"
tags = {
{customized property} = "string"
}
body = {
properties = {
databasesInfo = [
{
sourceDatabaseName = "string"
}
]
sourceConnectionInfo = {
password = "string"
userName = "string"
type = "string"
// For remaining properties, see ConnectionInfo objects
}
sourcePlatform = "string"
targetConnectionInfo = {
password = "string"
userName = "string"
type = "string"
// For remaining properties, see ConnectionInfo objects
}
targetPlatform = "string"
}
}
}
ConnectionInfo objects
Set the type property to specify the type of object.
For MiSqlConnectionInfo, use:
{
managedInstanceResourceId = "string"
type = "MiSqlConnectionInfo"
}
For MySqlConnectionInfo, use:
{
port = int
serverName = "string"
type = "MySqlConnectionInfo"
}
For PostgreSqlConnectionInfo, use:
{
databaseName = "string"
port = int
serverName = "string"
type = "PostgreSqlConnectionInfo"
}
For SqlConnectionInfo, use:
{
additionalSettings = "string"
authentication = "string"
dataSource = "string"
encryptConnection = bool
platform = "string"
trustServerCertificate = bool
type = "SqlConnectionInfo"
}
Property Values
Microsoft.DataMigration/services/projects
| 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: services |
| properties | Project properties | ProjectProperties |
| tags | Resource tags | Dictionary of tag names and values. |
| type | The resource type | "Microsoft.DataMigration/services/projects@2018-04-19" |
ConnectionInfo
| Name | Description | Value |
|---|---|---|
| password | Password credential. | string |
| type | Set to 'MiSqlConnectionInfo' for type MiSqlConnectionInfo. Set to 'MySqlConnectionInfo' for type MySqlConnectionInfo. Set to 'PostgreSqlConnectionInfo' for type PostgreSqlConnectionInfo. Set to 'SqlConnectionInfo' for type SqlConnectionInfo. | 'MiSqlConnectionInfo' 'MySqlConnectionInfo' 'PostgreSqlConnectionInfo' 'SqlConnectionInfo' (required) |
| userName | User name | string |
DatabaseInfo
| Name | Description | Value |
|---|---|---|
| sourceDatabaseName | Name of the database | string (required) |
MiSqlConnectionInfo
| Name | Description | Value |
|---|---|---|
| managedInstanceResourceId | Resource id for Azure SQL database Managed instance | string (required) |
| type | Type of connection info | 'MiSqlConnectionInfo' (required) |
MySqlConnectionInfo
| Name | Description | Value |
|---|---|---|
| port | Port for Server | int (required) |
| serverName | Name of the server | string (required) |
| type | Type of connection info | 'MySqlConnectionInfo' (required) |
PostgreSqlConnectionInfo
| Name | Description | Value |
|---|---|---|
| databaseName | Name of the database | string |
| port | Port for Server | int (required) |
| serverName | Name of the server | string (required) |
| type | Type of connection info | 'PostgreSqlConnectionInfo' (required) |
ProjectProperties
| Name | Description | Value |
|---|---|---|
| databasesInfo | List of DatabaseInfo | DatabaseInfo[] |
| sourceConnectionInfo | Information for connecting to source | ConnectionInfo |
| sourcePlatform | Source platform for the project | 'SQL' 'Unknown' (required) |
| targetConnectionInfo | Information for connecting to target | ConnectionInfo |
| targetPlatform | Target platform for the project | 'SQLDB' 'Unknown' (required) |
SqlConnectionInfo
| Name | Description | Value |
|---|---|---|
| additionalSettings | Additional connection settings | string |
| authentication | Authentication type to use for connection | 'ActiveDirectoryIntegrated' 'ActiveDirectoryPassword' 'None' 'SqlAuthentication' 'WindowsAuthentication' |
| dataSource | Data source in the format Protocol:MachineName\SQLServerInstanceName,PortNumber | string (required) |
| encryptConnection | Whether to encrypt the connection | bool |
| platform | Server platform type for connection | 'SqlOnPrem' |
| trustServerCertificate | Whether to trust the server certificate | bool |
| type | Type of connection info | 'SqlConnectionInfo' (required) |
TrackedResourceTags
| Name | Description | Value |
|---|