diff --git a/schemas/2018-06-01-preview/Microsoft.DBForMariaDB.json b/schemas/2018-06-01-preview/Microsoft.DBForMariaDB.json new file mode 100644 index 0000000000..e03773418c --- /dev/null +++ b/schemas/2018-06-01-preview/Microsoft.DBForMariaDB.json @@ -0,0 +1,931 @@ +{ + "id": "https://schema.management.azure.com/schemas/2018-06-01-preview/Microsoft.DBForMariaDB.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.DBForMariaDB", + "description": "Microsoft DBForMariaDB Resource Types", + "resourceDefinitions": { + "servers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The location the resource resides in." + }, + "name": { + "type": "string", + "description": "The name of the server." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ServerPropertiesForCreate" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties used to create a new server." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/servers_firewallRules_childResource" + }, + { + "$ref": "#/definitions/servers_virtualNetworkRules_childResource" + }, + { + "$ref": "#/definitions/servers_databases_childResource" + }, + { + "$ref": "#/definitions/servers_configurations_childResource" + }, + { + "$ref": "#/definitions/servers_securityAlertPolicies_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/Sku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Billing information related properties of a server." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Application-specific metadata in the form of key-value pairs." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBForMariaDB/servers" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers" + }, + "servers_configurations": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the server configuration." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a configuration." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBForMariaDB/servers/configurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/configurations" + }, + "servers_databases": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the database." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DatabaseProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a database." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBForMariaDB/servers/databases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/databases" + }, + "servers_firewallRules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the server firewall rule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FirewallRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a server firewall rule." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBForMariaDB/servers/firewallRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/firewallRules" + }, + "servers_securityAlertPolicies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the threat detection policy." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SecurityAlertPolicyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a security alert policy." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBForMariaDB/servers/securityAlertPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/securityAlertPolicies" + }, + "servers_virtualNetworkRules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the virtual network rule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VirtualNetworkRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a virtual network rule." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBForMariaDB/servers/virtualNetworkRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/virtualNetworkRules" + } + }, + "definitions": { + "ConfigurationProperties": { + "type": "object", + "properties": { + "source": { + "type": "string", + "description": "Source of the configuration." + }, + "value": { + "type": "string", + "description": "Value of the configuration." + } + }, + "description": "The properties of a configuration." + }, + "DatabaseProperties": { + "type": "object", + "properties": { + "charset": { + "type": "string", + "description": "The charset of the database." + }, + "collation": { + "type": "string", + "description": "The collation of the database." + } + }, + "description": "The properties of a database." + }, + "FirewallRuleProperties": { + "type": "object", + "properties": { + "endIpAddress": { + "oneOf": [ + { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The end IP address of the server firewall rule. Must be IPv4 format." + }, + "startIpAddress": { + "oneOf": [ + { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The start IP address of the server firewall rule. Must be IPv4 format." + } + }, + "required": [ + "endIpAddress", + "startIpAddress" + ], + "description": "The properties of a server firewall rule." + }, + "SecurityAlertPolicyProperties": { + "type": "object", + "properties": { + "disabledAlerts": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly" + }, + "emailAccountAdmins": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies that the alert is sent to the account administrators." + }, + "emailAddresses": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies an array of e-mail addresses to which the alert is sent." + }, + "retentionDays": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the number of days to keep in the Threat Detection audit logs." + }, + "state": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the state of the policy, whether it is enabled or disabled." + }, + "storageAccountAccessKey": { + "type": "string", + "description": "Specifies the identifier key of the Threat Detection audit storage account." + }, + "storageEndpoint": { + "type": "string", + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs." + } + }, + "required": [ + "state" + ], + "description": "Properties of a security alert policy." + }, + "ServerPropertiesForCreate": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/ServerPropertiesForDefaultCreate" + }, + { + "$ref": "#/definitions/ServerPropertiesForRestore" + }, + { + "$ref": "#/definitions/ServerPropertiesForGeoRestore" + }, + { + "$ref": "#/definitions/ServerPropertiesForReplica" + } + ], + "properties": { + "sslEnforcement": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable ssl enforcement or not when connect to server." + }, + "storageProfile": { + "oneOf": [ + { + "$ref": "#/definitions/StorageProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage Profile properties of a server" + }, + "version": { + "oneOf": [ + { + "type": "string", + "enum": [ + "10.2", + "10.3" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Server version." + } + }, + "description": "The properties used to create a new server." + }, + "ServerPropertiesForDefaultCreate": { + "type": "object", + "properties": { + "administratorLogin": { + "type": "string", + "description": "The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation)." + }, + "administratorLoginPassword": { + "type": "string", + "format": "password", + "description": "The password of the administrator login." + }, + "createMode": { + "type": "string", + "enum": [ + "Default" + ] + } + }, + "required": [ + "administratorLogin", + "administratorLoginPassword", + "createMode" + ], + "description": "The properties used to create a new server." + }, + "ServerPropertiesForGeoRestore": { + "type": "object", + "properties": { + "createMode": { + "type": "string", + "enum": [ + "GeoRestore" + ] + }, + "sourceServerId": { + "type": "string", + "description": "The source server id to restore from." + } + }, + "required": [ + "createMode", + "sourceServerId" + ], + "description": "The properties used to create a new server by restoring to a different region from a geo replicated backup." + }, + "ServerPropertiesForReplica": { + "type": "object", + "properties": { + "createMode": { + "type": "string", + "enum": [ + "Replica" + ] + }, + "sourceServerId": { + "type": "string", + "description": "The master server id to create replica from." + } + }, + "required": [ + "createMode", + "sourceServerId" + ], + "description": "The properties to create a new replica." + }, + "ServerPropertiesForRestore": { + "type": "object", + "properties": { + "createMode": { + "type": "string", + "enum": [ + "PointInTimeRestore" + ] + }, + "restorePointInTime": { + "type": "string", + "format": "date-time", + "description": "Restore point creation time (ISO8601 format), specifying the time to restore from." + }, + "sourceServerId": { + "type": "string", + "description": "The source server id to restore from." + } + }, + "required": [ + "createMode", + "restorePointInTime", + "sourceServerId" + ], + "description": "The properties used to create a new server by restoring from a backup." + }, + "servers_configurations_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the server configuration." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a configuration." + }, + "type": { + "type": "string", + "enum": [ + "configurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/configurations" + }, + "servers_databases_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the database." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DatabaseProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a database." + }, + "type": { + "type": "string", + "enum": [ + "databases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/databases" + }, + "servers_firewallRules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the server firewall rule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FirewallRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a server firewall rule." + }, + "type": { + "type": "string", + "enum": [ + "firewallRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/firewallRules" + }, + "servers_securityAlertPolicies_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01-preview" + ] + }, + "name": { + "type": "string", + "enum": [ + "default" + ], + "description": "The name of the threat detection policy." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SecurityAlertPolicyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a security alert policy." + }, + "type": { + "type": "string", + "enum": [ + "securityAlertPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/securityAlertPolicies" + }, + "servers_virtualNetworkRules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the virtual network rule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VirtualNetworkRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a virtual network rule." + }, + "type": { + "type": "string", + "enum": [ + "virtualNetworkRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/virtualNetworkRules" + }, + "Sku": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The scale up/out capacity, representing server's compute units." + }, + "family": { + "type": "string", + "description": "The family of hardware." + }, + "name": { + "type": "string", + "description": "The name of the sku, typically, tier + family + cores, e.g. B_Gen4_1, GP_Gen5_8." + }, + "size": { + "type": "string", + "description": "The size code, to be interpreted by resource as appropriate." + }, + "tier": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Basic", + "GeneralPurpose", + "MemoryOptimized" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tier of the particular SKU, e.g. Basic." + } + }, + "required": [ + "name" + ], + "description": "Billing information related properties of a server." + }, + "StorageProfile": { + "type": "object", + "properties": { + "backupRetentionDays": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup retention days for the server." + }, + "geoRedundantBackup": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable Geo-redundant or not for server backup." + }, + "storageAutogrow": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable Storage Auto Grow." + }, + "storageMB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Max storage allowed for a server." + } + }, + "description": "Storage Profile properties of a server" + }, + "VirtualNetworkRuleProperties": { + "type": "object", + "properties": { + "ignoreMissingVnetServiceEndpoint": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Create firewall rule before the virtual network has vnet service endpoint enabled." + }, + "virtualNetworkSubnetId": { + "type": "string", + "description": "The ARM resource id of the virtual network subnet." + } + }, + "required": [ + "virtualNetworkSubnetId" + ], + "description": "Properties of a virtual network rule." + } + } +} diff --git a/schemas/2018-06-01/Microsoft.DBForMariaDB.json b/schemas/2018-06-01/Microsoft.DBForMariaDB.json new file mode 100644 index 0000000000..f7329e5194 --- /dev/null +++ b/schemas/2018-06-01/Microsoft.DBForMariaDB.json @@ -0,0 +1,1079 @@ +{ + "id": "https://schema.management.azure.com/schemas/2018-06-01/Microsoft.DBForMariaDB.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.DBForMariaDB", + "description": "Microsoft DBForMariaDB Resource Types", + "resourceDefinitions": { + "servers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "location": { + "type": "string", + "description": "The location the resource resides in." + }, + "name": { + "type": "string", + "description": "The name of the server." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ServerPropertiesForCreate" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties used to create a new server." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/servers_firewallRules_childResource" + }, + { + "$ref": "#/definitions/servers_virtualNetworkRules_childResource" + }, + { + "$ref": "#/definitions/servers_databases_childResource" + }, + { + "$ref": "#/definitions/servers_configurations_childResource" + }, + { + "$ref": "#/definitions/servers_privateEndpointConnections_childResource" + }, + { + "$ref": "#/definitions/servers_securityAlertPolicies_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/Sku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Billing information related properties of a server." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Application-specific metadata in the form of key-value pairs." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBForMariaDB/servers" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers" + }, + "servers_configurations": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the server configuration." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a configuration." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBForMariaDB/servers/configurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/configurations" + }, + "servers_databases": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the database." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DatabaseProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a database." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBForMariaDB/servers/databases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/databases" + }, + "servers_firewallRules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the server firewall rule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FirewallRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a server firewall rule." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBForMariaDB/servers/firewallRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/firewallRules" + }, + "servers_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a private endpoint connection." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBforMariaDB/servers/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBforMariaDB/servers/privateEndpointConnections" + }, + "servers_securityAlertPolicies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the threat detection policy." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SecurityAlertPolicyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a security alert policy." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBforMariaDB/servers/securityAlertPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBforMariaDB/servers/securityAlertPolicies" + }, + "servers_virtualNetworkRules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the virtual network rule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VirtualNetworkRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a virtual network rule." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DBForMariaDB/servers/virtualNetworkRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/virtualNetworkRules" + } + }, + "definitions": { + "ConfigurationProperties": { + "type": "object", + "properties": { + "source": { + "type": "string", + "description": "Source of the configuration." + }, + "value": { + "type": "string", + "description": "Value of the configuration." + } + }, + "description": "The properties of a configuration." + }, + "DatabaseProperties": { + "type": "object", + "properties": { + "charset": { + "type": "string", + "description": "The charset of the database." + }, + "collation": { + "type": "string", + "description": "The collation of the database." + } + }, + "description": "The properties of a database." + }, + "FirewallRuleProperties": { + "type": "object", + "properties": { + "endIpAddress": { + "oneOf": [ + { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The end IP address of the server firewall rule. Must be IPv4 format." + }, + "startIpAddress": { + "oneOf": [ + { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The start IP address of the server firewall rule. Must be IPv4 format." + } + }, + "required": [ + "endIpAddress", + "startIpAddress" + ], + "description": "The properties of a server firewall rule." + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointProperty" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Properties of a private endpoint connection." + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource id of the private endpoint." + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "status": { + "type": "string", + "description": "The private link service connection status." + } + }, + "required": [ + "description", + "status" + ] + }, + "SecurityAlertPolicyProperties": { + "type": "object", + "properties": { + "disabledAlerts": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly" + }, + "emailAccountAdmins": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies that the alert is sent to the account administrators." + }, + "emailAddresses": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies an array of e-mail addresses to which the alert is sent." + }, + "retentionDays": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the number of days to keep in the Threat Detection audit logs." + }, + "state": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the state of the policy, whether it is enabled or disabled." + }, + "storageAccountAccessKey": { + "type": "string", + "description": "Specifies the identifier key of the Threat Detection audit storage account." + }, + "storageEndpoint": { + "type": "string", + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs." + } + }, + "required": [ + "state" + ], + "description": "Properties of a security alert policy." + }, + "ServerPropertiesForCreate": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/ServerPropertiesForDefaultCreate" + }, + { + "$ref": "#/definitions/ServerPropertiesForRestore" + }, + { + "$ref": "#/definitions/ServerPropertiesForGeoRestore" + }, + { + "$ref": "#/definitions/ServerPropertiesForReplica" + } + ], + "properties": { + "publicNetworkAccess": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'." + }, + "sslEnforcement": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable ssl enforcement or not when connect to server." + }, + "storageProfile": { + "oneOf": [ + { + "$ref": "#/definitions/StorageProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage Profile properties of a server" + }, + "version": { + "oneOf": [ + { + "type": "string", + "enum": [ + "10.2", + "10.3" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Server version." + } + }, + "description": "The properties used to create a new server." + }, + "ServerPropertiesForDefaultCreate": { + "type": "object", + "properties": { + "administratorLogin": { + "type": "string", + "description": "The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation)." + }, + "administratorLoginPassword": { + "type": "string", + "format": "password", + "description": "The password of the administrator login." + }, + "createMode": { + "type": "string", + "enum": [ + "Default" + ] + } + }, + "required": [ + "administratorLogin", + "administratorLoginPassword", + "createMode" + ], + "description": "The properties used to create a new server." + }, + "ServerPropertiesForGeoRestore": { + "type": "object", + "properties": { + "createMode": { + "type": "string", + "enum": [ + "GeoRestore" + ] + }, + "sourceServerId": { + "type": "string", + "description": "The source server id to restore from." + } + }, + "required": [ + "createMode", + "sourceServerId" + ], + "description": "The properties used to create a new server by restoring to a different region from a geo replicated backup." + }, + "ServerPropertiesForReplica": { + "type": "object", + "properties": { + "createMode": { + "type": "string", + "enum": [ + "Replica" + ] + }, + "sourceServerId": { + "type": "string", + "description": "The master server id to create replica from." + } + }, + "required": [ + "createMode", + "sourceServerId" + ], + "description": "The properties to create a new replica." + }, + "ServerPropertiesForRestore": { + "type": "object", + "properties": { + "createMode": { + "type": "string", + "enum": [ + "PointInTimeRestore" + ] + }, + "restorePointInTime": { + "type": "string", + "format": "date-time", + "description": "Restore point creation time (ISO8601 format), specifying the time to restore from." + }, + "sourceServerId": { + "type": "string", + "description": "The source server id to restore from." + } + }, + "required": [ + "createMode", + "restorePointInTime", + "sourceServerId" + ], + "description": "The properties used to create a new server by restoring from a backup." + }, + "servers_configurations_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the server configuration." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a configuration." + }, + "type": { + "type": "string", + "enum": [ + "configurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/configurations" + }, + "servers_databases_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the database." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DatabaseProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a database." + }, + "type": { + "type": "string", + "enum": [ + "databases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/databases" + }, + "servers_firewallRules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the server firewall rule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FirewallRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a server firewall rule." + }, + "type": { + "type": "string", + "enum": [ + "firewallRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/firewallRules" + }, + "servers_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a private endpoint connection." + }, + "type": { + "type": "string", + "enum": [ + "privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBforMariaDB/servers/privateEndpointConnections" + }, + "servers_securityAlertPolicies_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "default" + ], + "description": "The name of the threat detection policy." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SecurityAlertPolicyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a security alert policy." + }, + "type": { + "type": "string", + "enum": [ + "securityAlertPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBforMariaDB/servers/securityAlertPolicies" + }, + "servers_virtualNetworkRules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-06-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the virtual network rule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VirtualNetworkRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a virtual network rule." + }, + "type": { + "type": "string", + "enum": [ + "virtualNetworkRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DBForMariaDB/servers/virtualNetworkRules" + }, + "Sku": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The scale up/out capacity, representing server's compute units." + }, + "family": { + "type": "string", + "description": "The family of hardware." + }, + "name": { + "type": "string", + "description": "The name of the sku, typically, tier + family + cores, e.g. B_Gen4_1, GP_Gen5_8." + }, + "size": { + "type": "string", + "description": "The size code, to be interpreted by resource as appropriate." + }, + "tier": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Basic", + "GeneralPurpose", + "MemoryOptimized" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tier of the particular SKU, e.g. Basic." + } + }, + "required": [ + "name" + ], + "description": "Billing information related properties of a server." + }, + "StorageProfile": { + "type": "object", + "properties": { + "backupRetentionDays": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup retention days for the server." + }, + "geoRedundantBackup": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable Geo-redundant or not for server backup." + }, + "storageAutogrow": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable Storage Auto Grow." + }, + "storageMB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Max storage allowed for a server." + } + }, + "description": "Storage Profile properties of a server" + }, + "VirtualNetworkRuleProperties": { + "type": "object", + "properties": { + "ignoreMissingVnetServiceEndpoint": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Create firewall rule before the virtual network has vnet service endpoint enabled." + }, + "virtualNetworkSubnetId": { + "type": "string", + "description": "The ARM resource id of the virtual network subnet." + } + }, + "required": [ + "virtualNetworkSubnetId" + ], + "description": "Properties of a virtual network rule." + } + } +}