diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateAvailabilityGroupListener.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateAvailabilityGroupListener.json new file mode 100644 index 000000000000..6b19a28e1869 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateAvailabilityGroupListener.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "availabilityGroupListenerName": "agl-test", + "api-version": "2017-03-01-preview", + "parameters": { + "AvailabilityGroupName": "ag-test", + "LoadBalancerConfigurations": [ + { + "PrivateIPAddress": { + "IpAddress": "10.1.0.112", + "SubnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default" + }, + "LoadBalancerResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb-test", + "ProbePort": "59983", + "SqlVirtualMachineInstances": [ + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3" + ] + } + ], + "Port": "1433" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Updating", + "loadBalancerConfigurations": [ + { + "privateIpAddress": { + "ipAddress": "10.1.0.113", + "subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default" + }, + "sqlVirtualMachineInstances": [ "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3" ] + } + ], + "port": 1433 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup/availabilityGroupListeners/agl-test", + "name": "agl-test", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners" + } + }, + "201": { + "body": { + "properties": { + "provisioningState": "Provisioning", + "loadBalancerConfigurations": [ + { + "privateIpAddress": { + "ipAddress": "10.1.0.112", + "subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default" + }, + "sqlVirtualMachineInstances": [ "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3" ] + } + ], + "port": 1433 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup/availabilityGroupListeners/agl-test", + "name": "agl-test", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineGroup.json new file mode 100644 index 000000000000..9797079548a8 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineGroup.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "properties": { + "SqlImageOffer": "SQL2016-WS2016", + "SqlImageSku": "Enterprise", + "WsfcDomainProfile": { + "DomainFQDN": "testdomain.com", + "OUPath": "OU=WSCluster,DC=testdomain,DC=com", + "ClusterBootstrapAccount": "testrpadmin", + "ClusterOperatorAccount": "testrp@testdomain.com", + "SqlServiceAccount": "sqlservice@testdomain.com", + "StorageAccountUrl": "https://storgact.blob.core.windows.net/", + "StorageAccountPrimaryKey": "" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "UpdatingDomainful", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup", + "name": "testvmgroup", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + } + }, + "201": { + "body": { + "properties": { + "provisioningState": "ProvisioningDomainful", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup", + "name": "testvmgroup", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineMAX.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineMAX.json new file mode 100644 index 000000000000..eb165d5d9f3b --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineMAX.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineName":"testvm", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "northeurope", + "properties": { + "sqlServerLicenseType": "PAYG", + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "ServerConfigurationsManagementSettings": { + "SQLConnectivityUpdateSettings": { + "ConnectivityType": "Private", + "Port": 1433, + "SQLAuthUpdateUserName": "sqllogin", + "SQLAuthUpdatePassword": "" + }, + "SQLStorageUpdateSettings": { + "DiskCount": 1, + "DiskConfigurationType": "NEW" + }, + "SQLWorkloadTypeUpdateSettings": { + "SQLWorkloadType": "OLTP" + }, + "AdditionalFeaturesServerConfigurations": { + "IsRServicesEnabled": false + } + }, + "KeyVaultCredentialSettings": { + "Enable": false + }, + "AutoPatchingSettings": { + "Enable": true, + "DayOfWeek": "Sunday", + "MaintenanceWindowStartingHour": 2, + "MaintenanceWindowDuration": 60 + }, + "AutoBackupSettings": { + "Enable": true, + "RetentionPeriod": 17, + "EnableEncryption": true, + "Password": "", + "BackupScheduleType": "Manual", + "BackupSystemDbs": true, + "StorageAccountUrl": "https://teststorage.blob.core.windows.net/", + "StorageAccessKey": "", + "FullBackupFrequency": "Daily", + "FullBackupStartTime": 6, + "FullBackupWindowHours": 11, + "LogBackupFrequency": 10 + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Updating", + "sqlServerLicenseType": "PAYG", + "sqlImageSku": "Enterprise" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + }, + "201": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Provisioning", + "sqlServerLicenseType": "PAYG", + "sqlImageSku": "Unknown" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineMIN.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineMIN.json new file mode 100644 index 000000000000..b1afdafb9408 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineMIN.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineName": "testvm", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "northeurope", + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Updating", + "sqlServerLicenseType": "PAYG", + "sqlImageSku": "Enterprise" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + }, + "201": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Provisioning", + "sqlServerLicenseType": "PAYG", + "sqlImageSku": "Unknown" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateVirtualMachineWithVMGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateVirtualMachineWithVMGroup.json new file mode 100644 index 000000000000..1d591806ded8 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateVirtualMachineWithVMGroup.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineName": "testvm", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "northeurope", + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm2", + "SqlVirtualMachineGroupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup", + "WsfcDomainCredentials": { + "ClusterBootstrapAccountPassword": "", + "ClusterOperatorAccountPassword": "", + "SqlServiceAccountPassword": "" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm2", + "provisioningState": "Updating", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG", + "sqlVirtualMachineGroupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2", + "name": "testvm2", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + }, + "201": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm2", + "provisioningState": "Provisioning", + "sqlImageSku": "Unknown", + "sqlServerLicenseType": "PAYG", + "sqlVirtualMachineGroupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2", + "name": "testvm2", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + } + } +} diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteAvailabilityGroupListener.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteAvailabilityGroupListener.json new file mode 100644 index 000000000000..98d9c96eb0f2 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteAvailabilityGroupListener.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "availabilityGroupListenerName": "agl-test", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteSqlVirtualMachine.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteSqlVirtualMachine.json new file mode 100644 index 000000000000..f4489c95f57e --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteSqlVirtualMachine.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineName": "testvm1", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteSqlVirtualMachineGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteSqlVirtualMachineGroup.json new file mode 100644 index 000000000000..b3d3c439e4cb --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteSqlVirtualMachineGroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetAvailabilityGroupListener.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetAvailabilityGroupListener.json new file mode 100644 index 000000000000..de85cdc4c309 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetAvailabilityGroupListener.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "availabilityGroupListenerName": "agl-test", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "availabilityGroupName": "ag-test", + "loadBalancerConfigurations": [ + { + "privateIpAddress": { + "ipAddress": "10.1.0.112", + "subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default" + }, + "loadBalancerResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb-test", + "probePort": 59983, + "sqlVirtualMachineInstances": [ "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2" ] + } + ], + "port": 1433 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup/availabilityGroupListeners/agl-test", + "name": "agl-test", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetSqlVirtualMachine.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetSqlVirtualMachine.json new file mode 100644 index 000000000000..36e4c9ee375f --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetSqlVirtualMachine.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineName": "testvm", + "api-version": "2017-03-01-preview", + "parameters": { + } + }, + "responses": { + "200": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetSqlVirtualMachineGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetSqlVirtualMachineGroup.json new file mode 100644 index 000000000000..2fc27894ba40 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetSqlVirtualMachineGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup", + "name": "testvmgroup", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByGroupAvailabilityGroupListener.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByGroupAvailabilityGroupListener.json new file mode 100644 index 000000000000..b79af039a5df --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByGroupAvailabilityGroupListener.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "availabilityGroupName": "ag-test", + "loadBalancerConfigurations": [ + { + "privateIpAddress": { + "ipAddress": "10.1.0.112", + "subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default" + }, + "loadBalancerResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb-test", + "probePort": 59983, + "sqlVirtualMachineInstances": [ "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2" ] + } + ], + "port": 1433 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup/availabilityGroupListeners/agl-test", + "name": "agl-test", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByResourceGroupSqlVirtualMachine.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByResourceGroupSqlVirtualMachine.json new file mode 100644 index 000000000000..6785d0d40347 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByResourceGroupSqlVirtualMachine.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + }, + { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm1", + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2017-WS2016", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm1", + "name": "testvm1", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByResourceGroupSqlVirtualMachineGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByResourceGroupSqlVirtualMachineGroup.json new file mode 100644 index 000000000000..cad9a73fd09d --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByResourceGroupSqlVirtualMachineGroup.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2017-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup", + "name": "testvmgroup", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + }, + { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup1", + "name": "testvmgroup1", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + }, + { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup2", + "name": "testvmgroup2", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + } + ] + } + } + } +} diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListOperation.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListOperation.json new file mode 100644 index 000000000000..1be629af051c --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListOperation.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/read", + "display": { + "resource": "SQL VirtualMachine Group", + "operation": "Get SQL VirtualMachine Group details", + "description": "Retrives details of SQL VirtualMachine Group" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/write", + "display": { + "resource": "SQL VirtualMachine Group", + "operation": "Create a new or update existing SQL VirtualMachine Group", + "description": "Create a new or change properties of existing SQL VirtualMachine Group" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/delete", + "display": { + "resource": "SQL VirtualMachine Group", + "operation": "Delete existing SQL VirtualMachine Group", + "description": "Delete existing SQL VirtualMachine Group" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners/read", + "display": { + "resource": "SQL AvailabilityGroup Listener", + "operation": "Get AvailabilityGroup Listener details", + "description": "Retrieves details of SQL AvailabilityGroup Listener on a given SQL VirtualMachine Group" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners/write", + "display": { + "resource": "SQL AvailabilityGroup Listener", + "operation": "Create new or update exising AvailabilityGroup Listener", + "description": "Create a new or change properties of existing SQL AvailabilityGroup Listener" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners/delete", + "display": { + "resource": "SQL AvailabilityGroup Listener", + "operation": "Delete existing AvailabilityGroup Listener", + "description": "Delete existing AvailabilityGroup Listener" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/locations/availabilityGroupListenerOperationResults/read", + "display": { + "resource": "SQL AvailabilityGroup Listener", + "operation": "Get AvailabilityGroup Listener operation result", + "description": "Get result of an AvailabilityGroup Listener operation" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/operations/read", + "display": { + "resource": "Available REST operations" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/locations/sqlVirtualMachineGroupOperationResults/read", + "display": { + "resource": "SQL VirtualMachine Group", + "operation": "Get SQL VirtualMachine Group operation result", + "description": "Get result of a SQL VirtualMachine Group operation" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachines/read", + "display": { + "operation": "Get SQL VirtualMachine Instance details", + "description": "Retrieves details of SQL VirtualMachine" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachines/write", + "display": { + "operation": "Create new or update existing SQL VirtualMachine", + "description": "Create a new or change properties of existing SQL VirtualMachine" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachines/delete", + "display": { + "operation": "Delete exisiting SQL VirtualMachine", + "description": "Delete exisiting SQL VirtualMachine" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/locations/sqlVirtualMachineOperationResults/read", + "display": { + "resource": "SQL VirtualMachine", + "operation": "Get SQL VirtualMachine operation result", + "description": "Get result of SQL VirtualMachine operation" + } + } + ] + } + } + } +} diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListSubscriptionSqlVirtualMachine.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListSubscriptionSqlVirtualMachine.json new file mode 100644 index 000000000000..74eee8a07a81 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListSubscriptionSqlVirtualMachine.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + }, + { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm1", + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2017-WS2016", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm1", + "name": "testvm1", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + }, + { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg1/providers/Microsoft.Compute/virtualMachines/testvm2", + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg1/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2", + "name": "testvm2", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListSubscriptionSqlVirtualMachineGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListSubscriptionSqlVirtualMachineGroup.json new file mode 100644 index 000000000000..b47490f3b56e --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListSubscriptionSqlVirtualMachineGroup.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2017-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/", + "name": "testvmgroup", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + }, + { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg1/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/", + "name": "testvmgroup1", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + }, + { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg2/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/", + "name": "testvmgroup2", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + } + ] + } + } + } +} diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/UpdateSqlVirtualMachine.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/UpdateSqlVirtualMachine.json new file mode 100644 index 000000000000..8493fc02413a --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/UpdateSqlVirtualMachine.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineName": "testvm", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "northeurope", + "tags": { + "mytag": "myval" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Updating", + "sqlServerLicenseType": "PAYG", + "sqlImageSku": "Unknown" + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/UpdateSqlVirtualMachineGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/UpdateSqlVirtualMachineGroup.json new file mode 100644 index 000000000000..7808f0432f6c --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/UpdateSqlVirtualMachineGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "northeurope", + "tags": { + "mytag": "myval" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "UpdatingDomainful", + "sqlImageOffer": "SQL2017-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvmgroup", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/sqlvm.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/sqlvm.json new file mode 100644 index 000000000000..48070b1972ca --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/sqlvm.json @@ -0,0 +1,1792 @@ +{ + "swagger": "2.0", + "info": { + "version": "2017-03-01-preview", + "title": "SqlVirtualMachineManagementClient", + "description": "The SQL virtual machine management API provides a RESTful set of web APIs that interact with Azure Compute, Network & Storage services to manage your SQL Server virtual machine. The API enables users to create, delete and retrieve a SQL virtual machine, SQL virtual machine group or availability group listener." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/{sqlVirtualMachineGroupName}/availabilityGroupListeners/{availabilityGroupListenerName}": { + "get": { + "tags": [ + "AvailabilityGroupListeners" + ], + "description": "Gets an availability group listener.", + "operationId": "AvailabilityGroupListeners_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "name": "availabilityGroupListenerName", + "in": "path", + "description": "Name of the availability group listener.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the availability group listener.", + "schema": { + "$ref": "#/definitions/AvailabilityGroupListener" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 400 DifferentSubSqlVmList - All SQL virtual machines should be under same subscription.\n\n * 400 OnlyStandardPublicIp - Every virtual machine should have standard public IP.\n\n * 400 ListenerNameTooLong - Listener name should not exceed 15 characters.\n\n * 400 InvalidListenerName - Invalid listener name.\n\n * 400 InvalidLBResourceIdParameterValue - Load balancer resource id is invalid.\n\n * 400 InvalidPublicIpResourceIdParameterValue - Public IP resource id is invalid.\n\n * 400 InvalidSubnetIdParameterValue - Invalid resource id provided for subnet parameter.\n\n * 400 VmNicVnetMismatch - Virtual machine NIC VNet mismatch.\n\n * 400 InvalidPrivateIpParameterValue - Invalid address given for private IP address.\n\n * 400 NoAvailabilitySet - Vm is not associated with any availability set.\n\n * 400 AvailabilitySetMismatch - Availability set of virtual machines does not match.\n\n * 400 MismatchVmGroupSubscription - Subscription id for SQL virtual machine and SQL virtual machine group are different.\n\n * 400 AgDoesNotExist - Availability group does not exist.\n\n * 400 AgListDoesNotMatch - SQL Availability group list does not match the list of virtual machines in SQL Virtual machine group.\n\n * 400 NoIpProvided - Atleast one IP needs to be provided.\n\n * 400 MoreIpProvided - Only one IP needs to be provided.\n\n * 400 SqlVmGroupDoesNotHaveAGListener - SQL virtual machine group does not have the AG listener.\n\n * 400 AgListenerUpdateNotAllowed - Only handful properties of availability group listener can be updated.\n\n * 400 SqlVmNotInGroup - SQL virtual machine is not part of the group.\n\n * 400 SqlVmListCannotBeEmpty - SQL virtual machines list cannot be empty.\n\n * 400 PublicIpNotIPv4 - Public IP must be IPv4 address.\n\n * 400 PublicIPDynamicAllocation - Public IP allocation mode must be static\n\n * 400 PublicLBInvalid - Load balancer specified is not public.\n\n * 400 SubnetMissingFromPrivateIP - Subnet must be provided with private IP.\n\n * 400 NoIpAvailable - No available IP.\n\n * 400 IPNotInSubnet - IP not part of subnet.\n\n * 400 MultipleListenerSameAG - Multiple availability group listeners for same availability group are not allowed.\n\n * 400 AgListenerNotEmpty - Availability group listener not empty.\n\n * 400 AgListenerVnetMismatch - Provided VNet for Availability group listener does not match Vnet of internal load balancer.\n\n * 400 InternalLBInvalid - Load balancer specified is not internal.\n\n * 400 InvalidSqlVmResourceIdParameterValue - SQL virtual machine resource id provided is invalid.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider.\n\n * 500 SqlVmGroupIsBusy - SQL virtual machine group is busy." + } + }, + "x-ms-examples": { + "Gets an availability group listener.": { + "$ref": "./examples/GetAvailabilityGroupListener.json" + } + } + }, + "put": { + "tags": [ + "AvailabilityGroupListeners" + ], + "description": "Creates or updates an availability group listener.", + "operationId": "AvailabilityGroupListeners_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "name": "availabilityGroupListenerName", + "in": "path", + "description": "Name of the availability group listener.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The availability group listener.", + "required": true, + "schema": { + "$ref": "#/definitions/AvailabilityGroupListener" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the availability group listener.", + "schema": { + "$ref": "#/definitions/AvailabilityGroupListener" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 400 DifferentSubSqlVmList - All SQL virtual machines should be under same subscription.\n\n * 400 OnlyStandardPublicIp - Every virtual machine should have standard public IP.\n\n * 400 ListenerNameTooLong - Listener name should not exceed 15 characters.\n\n * 400 InvalidListenerName - Invalid listener name.\n\n * 400 InvalidLBResourceIdParameterValue - Load balancer resource id is invalid.\n\n * 400 InvalidPublicIpResourceIdParameterValue - Public IP resource id is invalid.\n\n * 400 InvalidSubnetIdParameterValue - Invalid resource id provided for subnet parameter.\n\n * 400 VmNicVnetMismatch - Virtual machine NIC VNet mismatch.\n\n * 400 InvalidPrivateIpParameterValue - Invalid address given for private IP address.\n\n * 400 NoAvailabilitySet - Vm is not associated with any availability set.\n\n * 400 AvailabilitySetMismatch - Availability set of virtual machines does not match.\n\n * 400 MismatchVmGroupSubscription - Subscription id for SQL virtual machine and SQL virtual machine group are different.\n\n * 400 AgDoesNotExist - Availability group does not exist.\n\n * 400 AgListDoesNotMatch - SQL Availability group list does not match the list of virtual machines in SQL Virtual machine group.\n\n * 400 NoIpProvided - Atleast one IP needs to be provided.\n\n * 400 MoreIpProvided - Only one IP needs to be provided.\n\n * 400 SqlVmGroupDoesNotHaveAGListener - SQL virtual machine group does not have the AG listener.\n\n * 400 AgListenerUpdateNotAllowed - Only handful properties of availability group listener can be updated.\n\n * 400 SqlVmNotInGroup - SQL virtual machine is not part of the group.\n\n * 400 SqlVmListCannotBeEmpty - SQL virtual machines list cannot be empty.\n\n * 400 PublicIpNotIPv4 - Public IP must be IPv4 address.\n\n * 400 PublicIPDynamicAllocation - Public IP allocation mode must be static\n\n * 400 PublicLBInvalid - Load balancer specified is not public.\n\n * 400 SubnetMissingFromPrivateIP - Subnet must be provided with private IP.\n\n * 400 NoIpAvailable - No available IP.\n\n * 400 IPNotInSubnet - IP not part of subnet.\n\n * 400 MultipleListenerSameAG - Multiple availability group listeners for same availability group are not allowed.\n\n * 400 AgListenerNotEmpty - Availability group listener not empty.\n\n * 400 AgListenerVnetMismatch - Provided VNet for Availability group listener does not match Vnet of internal load balancer.\n\n * 400 InternalLBInvalid - Load balancer specified is not internal.\n\n * 400 InvalidSqlVmResourceIdParameterValue - SQL virtual machine resource id provided is invalid.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider.\n\n * 500 SqlVmGroupIsBusy - SQL virtual machine group is busy." + }, + "201": { + "description": "Successfully created the availability group listener.", + "schema": { + "$ref": "#/definitions/AvailabilityGroupListener" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates an availability group listener.": { + "$ref": "./examples/CreateOrUpdateAvailabilityGroupListener.json" + } + } + }, + "delete": { + "tags": [ + "AvailabilityGroupListeners" + ], + "description": "Deletes an availability group listener.", + "operationId": "AvailabilityGroupListeners_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "name": "availabilityGroupListenerName", + "in": "path", + "description": "Name of the availability group listener.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the availability group listener." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 400 DifferentSubSqlVmList - All SQL virtual machines should be under same subscription.\n\n * 400 OnlyStandardPublicIp - Every virtual machine should have standard public IP.\n\n * 400 ListenerNameTooLong - Listener name should not exceed 15 characters.\n\n * 400 InvalidListenerName - Invalid listener name.\n\n * 400 InvalidLBResourceIdParameterValue - Load balancer resource id is invalid.\n\n * 400 InvalidPublicIpResourceIdParameterValue - Public IP resource id is invalid.\n\n * 400 InvalidSubnetIdParameterValue - Invalid resource id provided for subnet parameter.\n\n * 400 VmNicVnetMismatch - Virtual machine NIC VNet mismatch.\n\n * 400 InvalidPrivateIpParameterValue - Invalid address given for private IP address.\n\n * 400 NoAvailabilitySet - Vm is not associated with any availability set.\n\n * 400 AvailabilitySetMismatch - Availability set of virtual machines does not match.\n\n * 400 MismatchVmGroupSubscription - Subscription id for SQL virtual machine and SQL virtual machine group are different.\n\n * 400 AgDoesNotExist - Availability group does not exist.\n\n * 400 AgListDoesNotMatch - SQL Availability group list does not match the list of virtual machines in SQL Virtual machine group.\n\n * 400 NoIpProvided - Atleast one IP needs to be provided.\n\n * 400 MoreIpProvided - Only one IP needs to be provided.\n\n * 400 SqlVmGroupDoesNotHaveAGListener - SQL virtual machine group does not have the AG listener.\n\n * 400 AgListenerUpdateNotAllowed - Only handful properties of availability group listener can be updated.\n\n * 400 SqlVmNotInGroup - SQL virtual machine is not part of the group.\n\n * 400 SqlVmListCannotBeEmpty - SQL virtual machines list cannot be empty.\n\n * 400 PublicIpNotIPv4 - Public IP must be IPv4 address.\n\n * 400 PublicIPDynamicAllocation - Public IP allocation mode must be static\n\n * 400 PublicLBInvalid - Load balancer specified is not public.\n\n * 400 SubnetMissingFromPrivateIP - Subnet must be provided with private IP.\n\n * 400 NoIpAvailable - No available IP.\n\n * 400 IPNotInSubnet - IP not part of subnet.\n\n * 400 MultipleListenerSameAG - Multiple availability group listeners for same availability group are not allowed.\n\n * 400 AgListenerNotEmpty - Availability group listener not empty.\n\n * 400 AgListenerVnetMismatch - Provided VNet for Availability group listener does not match Vnet of internal load balancer.\n\n * 400 InternalLBInvalid - Load balancer specified is not internal.\n\n * 400 InvalidSqlVmResourceIdParameterValue - SQL virtual machine resource id provided is invalid.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider.\n\n * 500 SqlVmGroupIsBusy - SQL virtual machine group is busy." + }, + "202": { + "description": "Deleting the availability group listener." + }, + "204": { + "description": "The availability group listener does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes an availability group listener.": { + "$ref": "./examples/DeleteAvailabilityGroupListener.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/{sqlVirtualMachineGroupName}/availabilityGroupListeners": { + "get": { + "tags": [ + "AvailabilityGroupListeners" + ], + "description": "Lists all availability group listeners in a SQL virtual machine group.", + "operationId": "AvailabilityGroupListeners_ListByGroup", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved all availability group listeners in a SQL virtual machine group.", + "schema": { + "$ref": "#/definitions/AvailabilityGroupListenerListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Lists all availability group listeners in a SQL virtual machine group.": { + "$ref": "./examples/ListByGroupAvailabilityGroupListener.json" + } + } + } + }, + "/providers/Microsoft.SqlVirtualMachine/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available SQL Rest API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Lists all of the available SQL Rest API operations.": { + "$ref": "./examples/ListOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/{sqlVirtualMachineGroupName}": { + "get": { + "tags": [ + "SqlVirtualMachineGroups" + ], + "description": "Gets a SQL virtual machine group.", + "operationId": "SqlVirtualMachineGroups_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the SQL virtual machine group.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + } + }, + "x-ms-examples": { + "Gets a SQL virtual machine group.": { + "$ref": "./examples/GetSqlVirtualMachineGroup.json" + } + } + }, + "put": { + "tags": [ + "SqlVirtualMachineGroups" + ], + "description": "Creates or updates a SQL virtual machine group.", + "operationId": "SqlVirtualMachineGroups_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The SQL virtual machine group.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroup" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the SQL virtual machine group.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 SqlVmGroupUpdateFailVmAttached - SQL virtual machine group cannot be updated as it has attached a SQL virtual machine.\n\n * 400 InvalidSqlImageOffer - Provided SQL image offer is invalid.\n\n * 400 InvalidSqlSku - Provided SQL sku is invalid.\n\n * 400 OuPathAndDomainMismatch - OU path is not within the domain provided.\n\n * 400 InvalidAccountNameFormat - Account name format is invalid.\n\n * 400 CloudWitnessUnsupported - For Windows Server 2012R2 setup cloud witness is not allowed.\n\n * 400 FileShareWitnessDisAllowed - For Windows Server 2016 and beyond setup, file share witness is not allowed.\n\n * 400 InvalidStorageAccountUrl - Invalid storage account url.\n\n * 400 SqlVmGroupNameTooLong - SQL virtual machine group name cannot exceed 15 characters.\n\n * 400 InvalidSqlVmGroupName - Invalid SQL virtual machine group name.\n\n * 400 SqlVmGroupNotEmpty - SQL virtual machine group is not empty.\n\n * 400 SqlVmGroupUpdateNotAllowed - Update to SQL virtual machine group is not allowed.\n\n * 403 AccessDenied - Access denied.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + }, + "201": { + "description": "Successfully created the SQL virtual machine group.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroup" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a SQL virtual machine group.": { + "$ref": "./examples/CreateOrUpdateSqlVirtualMachineGroup.json" + } + } + }, + "delete": { + "tags": [ + "SqlVirtualMachineGroups" + ], + "description": "Deletes a SQL virtual machine group.", + "operationId": "SqlVirtualMachineGroups_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the SQL virtual machine group." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 SqlVmGroupUpdateFailVmAttached - SQL virtual machine group cannot be updated as it has attached a SQL virtual machine.\n\n * 400 InvalidSqlImageOffer - Provided SQL image offer is invalid.\n\n * 400 InvalidSqlSku - Provided SQL sku is invalid.\n\n * 400 OuPathAndDomainMismatch - OU path is not within the domain provided.\n\n * 400 InvalidAccountNameFormat - Account name format is invalid.\n\n * 400 CloudWitnessUnsupported - For Windows Server 2012R2 setup cloud witness is not allowed.\n\n * 400 FileShareWitnessDisAllowed - For Windows Server 2016 and beyond setup, file share witness is not allowed.\n\n * 400 InvalidStorageAccountUrl - Invalid storage account url.\n\n * 400 SqlVmGroupNameTooLong - SQL virtual machine group name cannot exceed 15 characters.\n\n * 400 InvalidSqlVmGroupName - Invalid SQL virtual machine group name.\n\n * 400 SqlVmGroupNotEmpty - SQL virtual machine group is not empty.\n\n * 400 SqlVmGroupUpdateNotAllowed - Update to SQL virtual machine group is not allowed.\n\n * 403 AccessDenied - Access denied.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + }, + "202": { + "description": "Deleting the SQL virtual machine group." + }, + "204": { + "description": "The specified SQL virtual machine group does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a SQL virtual machine group.": { + "$ref": "./examples/DeleteSqlVirtualMachineGroup.json" + } + } + }, + "patch": { + "tags": [ + "SqlVirtualMachineGroups" + ], + "description": "Updates SQL virtual machine group tags.", + "operationId": "SqlVirtualMachineGroups_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The SQL virtual machine group.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroupUpdate" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the SQL virtual machine group.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 SqlVmGroupUpdateFailVmAttached - SQL virtual machine group cannot be updated as it has attached a SQL virtual machine.\n\n * 400 InvalidSqlImageOffer - Provided SQL image offer is invalid.\n\n * 400 InvalidSqlSku - Provided SQL sku is invalid.\n\n * 400 OuPathAndDomainMismatch - OU path is not within the domain provided.\n\n * 400 InvalidAccountNameFormat - Account name format is invalid.\n\n * 400 CloudWitnessUnsupported - For Windows Server 2012R2 setup cloud witness is not allowed.\n\n * 400 FileShareWitnessDisAllowed - For Windows Server 2016 and beyond setup, file share witness is not allowed.\n\n * 400 InvalidStorageAccountUrl - Invalid storage account url.\n\n * 400 SqlVmGroupNameTooLong - SQL virtual machine group name cannot exceed 15 characters.\n\n * 400 InvalidSqlVmGroupName - Invalid SQL virtual machine group name.\n\n * 400 SqlVmGroupNotEmpty - SQL virtual machine group is not empty.\n\n * 400 SqlVmGroupUpdateNotAllowed - Update to SQL virtual machine group is not allowed.\n\n * 403 AccessDenied - Access denied.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates a SQL virtual machine group tags.": { + "$ref": "./examples/UpdateSqlVirtualMachineGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups": { + "get": { + "tags": [ + "SqlVirtualMachineGroups" + ], + "description": "Gets all SQL virtual machine groups in a resource group.", + "operationId": "SqlVirtualMachineGroups_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved all SQL virtual machine groups in the resource group.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets all SQL virtual machine groups in a resource group.": { + "$ref": "./examples/ListByResourceGroupSqlVirtualMachineGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups": { + "get": { + "tags": [ + "SqlVirtualMachineGroups" + ], + "description": "Gets all SQL virtual machine groups in a subscription.", + "operationId": "SqlVirtualMachineGroups_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved all SQL virtual machine groups in the subscription.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets all SQL virtual machine groups in a subscription.": { + "$ref": "./examples/ListSubscriptionSqlVirtualMachineGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/{sqlVirtualMachineName}": { + "get": { + "tags": [ + "SqlVirtualMachines" + ], + "description": "Gets a SQL virtual machine.", + "operationId": "SqlVirtualMachines_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineName", + "in": "path", + "description": "Name of the SQL virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the SQL virtual machine.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachine" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + } + }, + "x-ms-examples": { + "Gets a SQL virtual machine.": { + "$ref": "./examples/GetSqlVirtualMachine.json" + } + } + }, + "put": { + "tags": [ + "SqlVirtualMachines" + ], + "description": "Creates or updates a SQL virtual machine.", + "operationId": "SqlVirtualMachines_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineName", + "in": "path", + "description": "Name of the SQL virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The SQL virtual machine.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlVirtualMachine" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the SQL virtual machine.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachine" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidVmResourceIdChange - Virtual machine resource id property cannot be updated.\n\n * 400 SqlVmAlreadyIncludedInGroup - SQL virtual machine cannot be moved from one group to another in same operation.\n\n * 400 SqlVmCannotRemoveFromGroup - SQL virtual machine cannot be removed from group.\n\n * 400 VmLocationMismatch - VM location does not match that of SQL virtual machine.\n\n * 400 SqlSkuMismatchWithGroup - SQL kku set on the SQL virtual machine group does not match that of the SQL virtual machine.\n\n * 400 VmLoadBalancerAssociated - LB already associated with the NIC.\n\n * 400 VmInsufficientPermission - Insufficient permission to Vm.\n\n * 400 VmPublisherNotSql - Publisher of VM image is not SQLServer.\n\n * 400 SingleNicOnVmAllowed - Only Single NIC virtual machines are allowed.\n\n * 400 InvalidSqlVmGroupResourceIdParameterValue - SQL virtual machine group resource id is not in correct format.\n\n * 400 MismatchVmGroupSubscription - Subscription id for SQL virtual machine and SQL virtual machine group are different.\n\n * 400 IncompleteDomainCredentialsProperty - Incomplete input provided for domain credentials property.\n\n * 400 InvalidVmResourceIdParameterValue - Provided virtual machine resource id is not valid.\n\n * 400 MismatchInSqlVmAndVmResourceIdSubscription - Mismatch in subscription id for SQL virtual machine and virtual machine resource id property.\n\n * 400 MismatchSqlVmAndVmName - SQL virtual machine name is not same as the virtual machine name provided on VirtualMachineResourceId property.\n\n * 400 MismatchSqlVmAndVmRgName - SQL virtual machine resource group name is not same as the virtual machine resource group name provided on VirtualMachineResourceId property.\n\n * 400 SqlVersionMismatchWithGroup - SQL version mismatch with SQL virtual machine group.\n\n * 400 VmOSVersionMismatchWithGroup - OSversion mismatch with group.\n\n * 400 AutoBackupEncryptionPasswordNotSpecified - Password not provided when enabling encryption as auto backup setting.\n\n * 400 BackupScheduleTypeNotSet - Backup schedule type needs to be set.\n\n * 400 BackupStorageCredentialsNotSpecified - Backup storage credentials are not specified.\n\n * 400 KeyvaultCredentialsNotSpecified - Key vault credentials not specified.\n\n * 400 SqlCredentialsNotSpecified - SQL Server credentials are not specified.\n\n * 400 IncompleteAutoPatchingSettings - Incomplete auto patching settings specified.\n\n * 400 IncompleteAutoBackupSettings - Incomplete auto backup settings specified.\n\n * 400 IncompleteSqlStorageSettings - Incomplete SQL storage settings specified.\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 403 AccessDenied - Access denied.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 404 SubscriptionDoesNotHaveSqlVMInResourceGroup - Subscription does not have SQL virtual machine Instance in resource group.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + }, + "201": { + "description": "Successfully created the SQL virtual machine.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachine" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a SQL virtual machine with max paramenters.": { + "$ref": "./examples/CreateOrUpdateSqlVirtualMachineMAX.json" + }, + "Creates or updates a SQL virtual machine and joins it to a SQL virtual machine group.": { + "$ref": "./examples/CreateOrUpdateVirtualMachineWithVMGroup.json" + }, + "Creates or updates a SQL virtual machine with min parameters.": { + "$ref": "./examples/CreateOrUpdateSqlVirtualMachineMIN.json" + } + } + }, + "delete": { + "tags": [ + "SqlVirtualMachines" + ], + "description": "Deletes a SQL virtual machine.", + "operationId": "SqlVirtualMachines_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineName", + "in": "path", + "description": "Name of the SQL virtual machine.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the SQL virtual machine." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidVmResourceIdChange - Virtual machine resource id property cannot be updated.\n\n * 400 SqlVmAlreadyIncludedInGroup - SQL virtual machine cannot be moved from one group to another in same operation.\n\n * 400 SqlVmCannotRemoveFromGroup - SQL virtual machine cannot be removed from group.\n\n * 400 VmLocationMismatch - VM location does not match that of SQL virtual machine.\n\n * 400 SqlSkuMismatchWithGroup - SQL kku set on the SQL virtual machine group does not match that of the SQL virtual machine.\n\n * 400 VmLoadBalancerAssociated - LB already associated with the NIC.\n\n * 400 VmInsufficientPermission - Insufficient permission to Vm.\n\n * 400 VmPublisherNotSql - Publisher of VM image is not SQLServer.\n\n * 400 SingleNicOnVmAllowed - Only Single NIC virtual machines are allowed.\n\n * 400 InvalidSqlVmGroupResourceIdParameterValue - SQL virtual machine group resource id is not in correct format.\n\n * 400 MismatchVmGroupSubscription - Subscription id for SQL virtual machine and SQL virtual machine group are different.\n\n * 400 IncompleteDomainCredentialsProperty - Incomplete input provided for domain credentials property.\n\n * 400 InvalidVmResourceIdParameterValue - Provided virtual machine resource id is not valid.\n\n * 400 MismatchInSqlVmAndVmResourceIdSubscription - Mismatch in subscription id for SQL virtual machine and virtual machine resource id property.\n\n * 400 MismatchSqlVmAndVmName - SQL virtual machine name is not same as the virtual machine name provided on VirtualMachineResourceId property.\n\n * 400 MismatchSqlVmAndVmRgName - SQL virtual machine resource group name is not same as the virtual machine resource group name provided on VirtualMachineResourceId property.\n\n * 400 SqlVersionMismatchWithGroup - SQL version mismatch with SQL virtual machine group.\n\n * 400 VmOSVersionMismatchWithGroup - OSversion mismatch with group.\n\n * 400 AutoBackupEncryptionPasswordNotSpecified - Password not provided when enabling encryption as auto backup setting.\n\n * 400 BackupScheduleTypeNotSet - Backup schedule type needs to be set.\n\n * 400 BackupStorageCredentialsNotSpecified - Backup storage credentials are not specified.\n\n * 400 KeyvaultCredentialsNotSpecified - Key vault credentials not specified.\n\n * 400 SqlCredentialsNotSpecified - SQL Server credentials are not specified.\n\n * 400 IncompleteAutoPatchingSettings - Incomplete auto patching settings specified.\n\n * 400 IncompleteAutoBackupSettings - Incomplete auto backup settings specified.\n\n * 400 IncompleteSqlStorageSettings - Incomplete SQL storage settings specified.\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 403 AccessDenied - Access denied.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 404 SubscriptionDoesNotHaveSqlVMInResourceGroup - Subscription does not have SQL virtual machine Instance in resource group.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + }, + "202": { + "description": "Deleting the SQL virtual machine." + }, + "204": { + "description": "The specified SQL virtual machine does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a SQL virtual machine.": { + "$ref": "./examples/DeleteSqlVirtualMachine.json" + } + } + }, + "patch": { + "tags": [ + "SqlVirtualMachines" + ], + "description": "Updates a SQL virtual machine.", + "operationId": "SqlVirtualMachines_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineName", + "in": "path", + "description": "Name of the SQL virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The SQL virtual machine.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlVirtualMachineUpdate" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the SQL virtual machine.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachine" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidVmResourceIdChange - Virtual machine resource id property cannot be updated.\n\n * 400 SqlVmAlreadyIncludedInGroup - SQL virtual machine cannot be moved from one group to another in same operation.\n\n * 400 SqlVmCannotRemoveFromGroup - SQL virtual machine cannot be removed from group.\n\n * 400 VmLocationMismatch - VM location does not match that of SQL virtual machine.\n\n * 400 SqlSkuMismatchWithGroup - SQL kku set on the SQL virtual machine group does not match that of the SQL virtual machine.\n\n * 400 VmLoadBalancerAssociated - LB already associated with the NIC.\n\n * 400 VmInsufficientPermission - Insufficient permission to Vm.\n\n * 400 VmPublisherNotSql - Publisher of VM image is not SQLServer.\n\n * 400 SingleNicOnVmAllowed - Only Single NIC virtual machines are allowed.\n\n * 400 InvalidSqlVmGroupResourceIdParameterValue - SQL virtual machine group resource id is not in correct format.\n\n * 400 MismatchVmGroupSubscription - Subscription id for SQL virtual machine and SQL virtual machine group are different.\n\n * 400 IncompleteDomainCredentialsProperty - Incomplete input provided for domain credentials property.\n\n * 400 InvalidVmResourceIdParameterValue - Provided virtual machine resource id is not valid.\n\n * 400 MismatchInSqlVmAndVmResourceIdSubscription - Mismatch in subscription id for SQL virtual machine and virtual machine resource id property.\n\n * 400 MismatchSqlVmAndVmName - SQL virtual machine name is not same as the virtual machine name provided on VirtualMachineResourceId property.\n\n * 400 MismatchSqlVmAndVmRgName - SQL virtual machine resource group name is not same as the virtual machine resource group name provided on VirtualMachineResourceId property.\n\n * 400 SqlVersionMismatchWithGroup - SQL version mismatch with SQL virtual machine group.\n\n * 400 VmOSVersionMismatchWithGroup - OSversion mismatch with group.\n\n * 400 AutoBackupEncryptionPasswordNotSpecified - Password not provided when enabling encryption as auto backup setting.\n\n * 400 BackupScheduleTypeNotSet - Backup schedule type needs to be set.\n\n * 400 BackupStorageCredentialsNotSpecified - Backup storage credentials are not specified.\n\n * 400 KeyvaultCredentialsNotSpecified - Key vault credentials not specified.\n\n * 400 SqlCredentialsNotSpecified - SQL Server credentials are not specified.\n\n * 400 IncompleteAutoPatchingSettings - Incomplete auto patching settings specified.\n\n * 400 IncompleteAutoBackupSettings - Incomplete auto backup settings specified.\n\n * 400 IncompleteSqlStorageSettings - Incomplete SQL storage settings specified.\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 403 AccessDenied - Access denied.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 404 SubscriptionDoesNotHaveSqlVMInResourceGroup - Subscription does not have SQL virtual machine Instance in resource group.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates a SQL virtual machine tags.": { + "$ref": "./examples/UpdateSqlVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines": { + "get": { + "tags": [ + "SqlVirtualMachines" + ], + "description": "Gets all SQL virtual machines in a resource group.", + "operationId": "SqlVirtualMachines_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved all SQL virtual machines in the resource group.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets all SQL virtual machines in a resource group.": { + "$ref": "./examples/ListByResourceGroupSqlVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines": { + "get": { + "tags": [ + "SqlVirtualMachines" + ], + "description": "Gets all SQL virtual machines in a subscription.", + "operationId": "SqlVirtualMachines_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved all SQL virtual machines in the subscription.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets all SQL virtual machines in a subscription.": { + "$ref": "./examples/ListSubscriptionSqlVirtualMachine.json" + } + } + } + } + }, + "definitions": { + "AvailabilityGroupListenerProperties": { + "description": "The properties of an availability group listener.", + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state to track the aysnc operation status.", + "type": "string", + "readOnly": true + }, + "availabilityGroupName": { + "description": "Name of the availability group.", + "type": "string" + }, + "loadBalancerConfigurations": { + "description": "List of load balancer configurations for an availability group listener.", + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancerConfiguration" + } + }, + "createDefaultAvailabilityGroupIfNotExist": { + "description": "Create a default availability group if it does not exist.", + "type": "boolean" + }, + "port": { + "format": "int32", + "description": "Listener port.", + "type": "integer" + } + } + }, + "LoadBalancerConfiguration": { + "description": "A load balancer configuration for an availability group listener.", + "type": "object", + "properties": { + "privateIpAddress": { + "$ref": "#/definitions/PrivateIPAddress", + "description": "Private IP address." + }, + "publicIpAddressResourceId": { + "description": "Resource id of the public IP.", + "type": "string" + }, + "loadBalancerResourceId": { + "description": "Subnet used to include private IP.", + "type": "string" + }, + "probePort": { + "format": "int32", + "description": "Probe port.", + "type": "integer" + }, + "sqlVirtualMachineInstances": { + "description": "List of the SQL virtual machine instance resource id's that are enrolled into the availability group listener.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "PrivateIPAddress": { + "description": "A private IP address bound to the availability group listener.", + "type": "object", + "properties": { + "ipAddress": { + "description": "Private IP address bound to the availability group listener.", + "type": "string" + }, + "subnetResourceId": { + "description": "Subnet used to include private IP.", + "type": "string" + } + } + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "AvailabilityGroupListener": { + "description": "A SQL Server availability group listener.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AvailabilityGroupListenerProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "AvailabilityGroupListenerListResult": { + "description": "A list of availability group listeners.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/AvailabilityGroupListener" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "Result of the request to list SQL operations.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "SQL REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "The name of the operation being performed on this particular object.", + "type": "string", + "readOnly": true + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "The localized display information for this particular operation / action.", + "readOnly": true + }, + "origin": { + "description": "The intended executor of the operation.", + "enum": [ + "user", + "system" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "OperationOrigin", + "modelAsString": true + } + }, + "properties": { + "description": "Additional descriptions for the operation.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true, + "x-ms-client-flatten": false + } + } + }, + "OperationDisplay": { + "description": "Display metadata associated with the operation.", + "type": "object", + "properties": { + "provider": { + "description": "The localized friendly form of the resource provider name.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The localized friendly form of the resource type related to this action/operation.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The localized friendly name for the operation.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The localized friendly description for the operation.", + "type": "string", + "readOnly": true + } + } + }, + "SqlVirtualMachineGroupProperties": { + "description": "The properties of a SQL virtual machine group.", + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state to track the aysnc operation status.", + "type": "string", + "readOnly": true + }, + "sqlImageOffer": { + "description": "SQL image offer. Examples may include SQL2016-WS2016, SQL2017-WS2016.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "sqlImageSku": { + "description": "SQL image sku.", + "enum": [ + "Developer", + "Express", + "Standard", + "Enterprise", + "Web" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlImageSku", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "create" + ] + }, + "scaleType": { + "description": "Scale type.", + "enum": [ + "HA" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ScaleType", + "modelAsString": true + } + }, + "clusterManagerType": { + "description": "Type of cluster manager: Windows Server Failover Cluster (WSFC), implied by the scale type of the group and the OS type.", + "enum": [ + "WSFC" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ClusterManagerType", + "modelAsString": true + } + }, + "clusterConfiguration": { + "description": "Cluster type.", + "enum": [ + "Domainful" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ClusterConfiguration", + "modelAsString": true + } + }, + "wsfcDomainProfile": { + "$ref": "#/definitions/WsfcDomainProfile", + "description": "Cluster Active Directory domain profile.", + "x-ms-mutability": [ + "read", + "create" + ] + } + } + }, + "WsfcDomainProfile": { + "description": "Active Directory account details to operate Windows Server Failover Cluster.", + "type": "object", + "properties": { + "domainFqdn": { + "description": "Fully qualified name of the domain.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "ouPath": { + "description": "Organizational Unit path in which the nodes and cluster will be present.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "clusterBootstrapAccount": { + "description": "Account name used for creating cluster (at minimum needs permissions to 'Create Computer Objects' in domain).", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "clusterOperatorAccount": { + "description": "Account name used for operating cluster i.e. will be part of administrators group on all the participating virtual machines in the cluster.", + "type": "string", + "x-ms-mutability": [ + "update" + ] + }, + "sqlServiceAccount": { + "description": "Account name under which SQL service will run on all participating SQL virtual machines in the cluster.", + "type": "string", + "x-ms-mutability": [ + "update" + ] + }, + "fileShareWitnessPath": { + "description": "Optional path for fileshare witness.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "storageAccountUrl": { + "description": "Fully qualified ARM resource id of the witness storage account.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "storageAccountPrimaryKey": { + "description": "Primary key of the witness storage account.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + } + } + }, + "TrackedResource": { + "description": "ARM tracked top level resource.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "SqlVirtualMachineGroup": { + "description": "A SQL virtual machine group.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlVirtualMachineGroupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlVirtualMachineGroupUpdate": { + "description": "An update to a SQL virtual machine group.", + "type": "object", + "properties": { + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "SqlVirtualMachineGroupListResult": { + "description": "A list of SQL virtual machine groups.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlVirtualMachineGroup" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ResourceIdentity": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.", + "enum": [ + "SystemAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "tenantId": { + "format": "uuid", + "description": "The Azure Active Directory tenant id.", + "type": "string", + "readOnly": true + } + } + }, + "SqlVirtualMachineProperties": { + "description": "The SQL virtual machine properties.", + "type": "object", + "properties": { + "virtualMachineResourceId": { + "description": "ARM Resource id of underlying virtual machine created from SQL marketplace image.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "provisioningState": { + "description": "Provisioning state to track the aysnc operation status.", + "type": "string", + "readOnly": true + }, + "sqlImageOffer": { + "description": "SQL image offer. Examples include SQL2016-WS2016, SQL2017-WS2016.", + "type": "string", + "readOnly": true + }, + "sqlServerLicenseType": { + "description": "SQL Server license type.", + "enum": [ + "PAYG", + "AHUB" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlServerLicenseType", + "modelAsString": true + } + }, + "sqlImageSku": { + "description": "SQL image sku.", + "enum": [ + "Developer", + "Express", + "Standard", + "Enterprise", + "Web" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SqlImageSku", + "modelAsString": true + } + }, + "sqlVirtualMachineGroupResourceId": { + "description": "ARM resource id of the SQL virtual machine group this SQL virtual machine is or will be part of.", + "type": "string", + "x-ms-mutability": [ + "update" + ] + }, + "wsfcDomainCredentials": { + "$ref": "#/definitions/WsfcDomainCredentials", + "description": "Domain credentials for setting up Windows Server Failover Cluster for SQL availability group." + }, + "autoPatchingSettings": { + "$ref": "#/definitions/AutoPatchingSettings", + "description": "Auto patching settings for applying critical security updates to SQL virtual machine." + }, + "autoBackupSettings": { + "$ref": "#/definitions/AutoBackupSettings", + "description": "Auto backup settings for SQL Server." + }, + "keyVaultCredentialSettings": { + "$ref": "#/definitions/KeyVaultCredentialSettings", + "description": "Key vault credential settings." + }, + "serverConfigurationsManagementSettings": { + "$ref": "#/definitions/ServerConfigurationsManagementSettings", + "description": "SQL Server configuration management settings." + } + } + }, + "WsfcDomainCredentials": { + "description": "Domain credentials for setting up Windows Server Failover Cluster for SQL availability group.", + "type": "object", + "properties": { + "clusterBootstrapAccountPassword": { + "description": "Cluster bootstrap account password.", + "type": "string" + }, + "clusterOperatorAccountPassword": { + "description": "Cluster operator account password.", + "type": "string" + }, + "sqlServiceAccountPassword": { + "description": "SQL service account password.", + "type": "string" + } + } + }, + "AutoPatchingSettings": { + "description": "Set a patching window during which Windows and SQL patches will be applied.", + "type": "object", + "properties": { + "enable": { + "description": "Enable or disable autopatching on SQL virtual machine.", + "type": "boolean" + }, + "dayOfWeek": { + "description": "Day of week to apply the patch on.", + "enum": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + } + }, + "maintenanceWindowStartingHour": { + "format": "int32", + "description": "Hour of the day when patching is initiated. Local VM time.", + "type": "integer" + }, + "maintenanceWindowDuration": { + "format": "int32", + "description": "Duration of patching.", + "type": "integer" + } + } + }, + "AutoBackupSettings": { + "description": "Configure backups for databases in your SQL virtual machine.", + "type": "object", + "properties": { + "enable": { + "description": "Enable or disable autobackup on SQL virtual machine.", + "type": "boolean" + }, + "enableEncryption": { + "description": "Enable or disable encryption for backup on SQL virtual machine.", + "type": "boolean" + }, + "retentionPeriod": { + "format": "int32", + "description": "Retention period of backup: 1-30 days.", + "type": "integer" + }, + "storageAccountUrl": { + "description": "Storage account url where backup will be taken to.", + "type": "string" + }, + "storageAccessKey": { + "description": "Storage account key where backup will be taken to.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "password": { + "description": "Password for encryption on backup.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "backupSystemDbs": { + "description": "Include or exclude system databases from auto backup.", + "type": "boolean" + }, + "backupScheduleType": { + "description": "Backup schedule type.", + "enum": [ + "Manual", + "Automated" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupScheduleType", + "modelAsString": true + } + }, + "fullBackupFrequency": { + "description": "Frequency of full backups. In both cases, full backups begin during the next scheduled time window.", + "enum": [ + "Daily", + "Weekly" + ], + "type": "string", + "x-ms-enum": { + "name": "FullBackupFrequencyType", + "modelAsString": true + } + }, + "fullBackupStartTime": { + "format": "int32", + "description": "Start time of a given day during which full backups can take place. 0-23 hours.", + "type": "integer" + }, + "fullBackupWindowHours": { + "format": "int32", + "description": "Duration of the time window of a given day during which full backups can take place. 1-23 hours.", + "type": "integer" + }, + "logBackupFrequency": { + "format": "int32", + "description": "Frequency of log backups. 5-60 minutes.", + "type": "integer" + } + } + }, + "KeyVaultCredentialSettings": { + "description": "Configure your SQL virtual machine to be able to connect to the Azure Key Vault service.", + "type": "object", + "properties": { + "enable": { + "description": "Enable or disable key vault credential setting.", + "type": "boolean" + }, + "credentialName": { + "description": "Credential name.", + "type": "string" + }, + "azureKeyVaultUrl": { + "description": "Azure Key Vault url.", + "type": "string" + }, + "servicePrincipalName": { + "description": "Service principal name to access key vault.", + "type": "string" + }, + "servicePrincipalSecret": { + "description": "Service principal name secret to access key vault.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + } + } + }, + "ServerConfigurationsManagementSettings": { + "description": "Set the connectivity, storage and workload settings.", + "type": "object", + "properties": { + "sqlConnectivityUpdateSettings": { + "$ref": "#/definitions/SqlConnectivityUpdateSettings", + "description": "SQL connectivity type settings." + }, + "sqlWorkloadTypeUpdateSettings": { + "$ref": "#/definitions/SqlWorkloadTypeUpdateSettings", + "description": "SQL workload type settings." + }, + "sqlStorageUpdateSettings": { + "$ref": "#/definitions/SqlStorageUpdateSettings", + "description": "SQL storage update settings." + }, + "additionalFeaturesServerConfigurations": { + "$ref": "#/definitions/AdditionalFeaturesServerConfigurations", + "description": "Additional SQL feature settings." + } + } + }, + "SqlConnectivityUpdateSettings": { + "description": "Set the access level and network port settings for SQL Server.", + "type": "object", + "properties": { + "connectivityType": { + "description": "SQL Server connectivity option.", + "enum": [ + "LOCAL", + "PRIVATE", + "PUBLIC" + ], + "type": "string", + "x-ms-enum": { + "name": "ConnectivityType", + "modelAsString": true + } + }, + "port": { + "format": "int32", + "description": "SQL Server port.", + "type": "integer" + }, + "sqlAuthUpdateUserName": { + "description": "SQL Server sysadmin login to create.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "sqlAuthUpdatePassword": { + "description": "SQL Server sysadmin login password.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + } + } + }, + "SqlWorkloadTypeUpdateSettings": { + "description": "Set workload type to optimize storage for SQL Server.", + "type": "object", + "properties": { + "sqlWorkloadType": { + "description": "SQL Server workload type.", + "enum": [ + "GENERAL", + "OLTP", + "DW" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlWorkloadType", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "create" + ] + } + } + }, + "SqlStorageUpdateSettings": { + "description": "Set disk storage settings for SQL Server.", + "type": "object", + "properties": { + "diskCount": { + "format": "int32", + "description": "Virtual machine disk count.", + "type": "integer" + }, + "diskConfigurationType": { + "description": "Disk configuration to apply to SQL Server.", + "enum": [ + "NEW", + "EXTEND", + "ADD" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskConfigurationType", + "modelAsString": true + } + } + } + }, + "AdditionalFeaturesServerConfigurations": { + "description": "Additional SQL Server feature settings.", + "type": "object", + "properties": { + "isRServicesEnabled": { + "description": "Enable or disable R services (SQL 2016 onwards).", + "type": "boolean" + }, + "backupPermissionsForAzureBackupSvc": { + "description": "Enable or disable Azure Backup service.", + "type": "boolean" + } + } + }, + "SqlVirtualMachine": { + "description": "A SQL virtual machine.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "Azure Active Directory identity of the server.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "properties": { + "$ref": "#/definitions/SqlVirtualMachineProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlVirtualMachineUpdate": { + "description": "An update to a SQL virtual machine.", + "type": "object", + "properties": { + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "SqlVirtualMachineListResult": { + "description": "A list of SQL virtual machines.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlVirtualMachine" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineNameParameter": { + "name": "sqlVirtualMachineName", + "in": "path", + "description": "Name of the SQL virtual machine.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineGroupNameParameter": { + "name": "sqlVirtualMachineGroupNameParameter", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AvailabilityGroupListenerNameParameter": { + "name": "availabilityGroupListenerNameParameter", + "in": "path", + "description": "Name of the availability group listener.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/readme.md b/specification/sqlvirtualmachine/resource-manager/readme.md new file mode 100644 index 000000000000..1809a016ac95 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/readme.md @@ -0,0 +1,101 @@ +# SQL virtual machine + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for SQL virtual machine. + + + +--- +## Getting Started +To build the SDK for SQL virtual machine, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + + + +### Basic Information +These are the global settings for the SQL virtual machine API. + +``` yaml +title: SqlVirtualMachineManagementClient +description: The SQL virtual machine management API provides a RESTful set of web APIs that interact with Azure Compute, Network & Storage services to manage your SQL Server virtual machine. The API enables users to create, delete and retrieve a SQL virtual machine, SQL virtual machine group or availability group listener. +openapi-type: arm +tag: package-2017-03-01-preview +``` + +### Tag: package-2017-03-01-preview + +These settings apply only when `--tag=package-2017-03-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2017-03-01-preview' +input-file: +- Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/sqlvm.json +``` + + +--- +# Code Generation + + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python +``` + + +### C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Management.SqlVirtualMachine + output-folder: $(csharp-sdks-folder)/SqlVirtualMachine/Management.SqlVirtualMachine/Generated + clear-output-folder: true +``` + + +### Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.sqlvirtualmachine + package-name: azure-mgmt-sqlvirtualmachine + clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt-sqlvirtualmachine/azure/mgmt/sqlvirtualmachine +``` + +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-mgmt-sqlvirtualmachine +```