monaco-yaml/test/fixtures/Microsoft.Compute.json
2018-12-14 18:00:45 +08:00

689 lines
16 KiB
JSON

{
"id": "http://schema.management.azure.com/schemas/2015-08-01/Microsoft.Compute.json#",
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Microsoft.Compute",
"description": "Microsoft Compute Resource Types",
"resourceDefinitions": {
"availabilitySets": {
"type": "object",
"properties": {
"type": {
"enum": ["Microsoft.Compute/availabilitySets"]
},
"apiVersion": {
"enum": ["2015-05-01-preview", "2015-06-15"]
},
"properties": {
"type": "object",
"properties": {
"platformUpdateDomainCount": {
"type": "number"
},
"platformFaultDomainCount": {
"type": "number"
}
}
}
},
"required": ["type", "apiVersion", "properties"]
},
"virtualMachines": {
"type": "object",
"properties": {
"type": {
"enum": ["Microsoft.Compute/virtualMachines"]
},
"apiVersion": {
"enum": ["2015-05-01-preview", "2015-06-15"]
},
"properties": {
"properties": {
"availabilitySet": {
"$ref": "#/definitions/id"
},
"hardwareProfile": {
"$ref": "#/definitions/hardwareProfile"
},
"storageProfile": {
"$ref": "#/definitions/storageProfile"
},
"osProfile": {
"$ref": "#/definitions/osProfile"
},
"networkProfile": {
"$ref": "#/definitions/networkProfile"
}
},
"type": "object",
"required": ["hardwareProfile", "storageProfile", "networkProfile"]
},
"resources": {
"type": "array",
"items": {
"allOf": [
{
"$ref": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#/definitions/resourceBase"
},
{
"oneOf": [
{
"$ref": "http://schema.management.azure.com/schemas/2015-01-01/Microsoft.Authorization.json#/definitions/locks"
},
{
"$ref": "http://schema.management.azure.com/schemas/2015-01-01/Microsoft.Resources.json#/definitions/links"
},
{
"$ref": "#/resourceDefinitions/extensionsChild"
}
]
}
]
},
"description": "Microsoft.Compute/virtualMachines: Resource Definition for Virtual Machines."
}
},
"required": ["type", "apiVersion", "properties"]
},
"virtualMachineScaleSets": {
"type": "object",
"properties": {
"type": {
"enum": ["Microsoft.Compute/virtualMachineScaleSets"]
},
"apiVersion": {
"enum": ["2015-05-01-preview", "2015-06-15"]
},
"sku": {
"$ref": "#/definitions/sku"
},
"properties": {
"properties": {
"upgradePolicy": {
"$ref": "#/definitions/upgradePolicy"
},
"virtualMachineProfile": {
"$ref": "#/definitions/virtualMachineProfile"
}
},
"type": "object",
"required": ["upgradePolicy", "virtualMachineProfile"]
}
},
"required": ["sku", "properties"]
},
"extensions": {
"type": "object",
"properties": {
"type": {
"enum": ["Microsoft.Compute/virtualMachines/extensions"]
},
"apiVersion": {
"enum": ["2015-05-01-preview", "2015-06-15"]
},
"properties": {
"properties": {
"publisher": {
"type": "string"
},
"type": {
"type": "string"
},
"typeHandlerVersion": {
"type": "string"
},
"settings": {
"type": "object"
}
},
"type": "object",
"required": ["publisher", "type", "typeHandlerVersion", "settings"]
}
},
"required": ["type", "apiVersion", "properties"]
},
"extensionsChild": {
"type": "object",
"properties": {
"type": {
"enum": ["extensions"]
},
"apiVersion": {
"enum": ["2015-05-01-preview", "2015-06-15"]
},
"properties": {
"properties": {
"publisher": {
"type": "string"
},
"type": {
"type": "string"
},
"typeHandlerVersion": {
"type": "string"
},
"settings": {
"type": "object"
}
},
"type": "object",
"required": ["publisher", "type", "typeHandlerVersion", "settings"]
}
},
"required": ["type", "apiVersion", "properties"]
}
},
"definitions": {
"id": {
"properties": {
"id": {
"type": "string"
}
},
"type": "object",
"required": ["id"]
},
"networkInterfaces": {
"properties": {
"id": {
"type": "string"
},
"properties": {
"properties": {
"primary": {
"type": "boolean"
}
},
"type": "object",
"required": ["primary"]
}
},
"type": "object",
"required": ["id"]
},
"hardwareProfile": {
"properties": {
"vmSize": {
"type": "string"
}
},
"type": "object",
"required": ["vmSize"]
},
"imageReference": {
"properties": {
"publisher": {
"type": "string"
},
"offer": {
"type": "string"
},
"sku": {
"type": "string"
},
"version": {
"type": "string",
"default": "latest"
}
},
"type": "object",
"required": ["publisher", "offer", "sku", "version"]
},
"vhd": {
"properties": {
"uri": {
"type": "string"
}
},
"type": "object",
"required": ["uri"]
},
"osDisk": {
"properties": {
"osType": {
"type": "string"
},
"name": {
"type": "string"
},
"vhd": {
"$ref": "#/definitions/vhd"
},
"image": {
"$ref": "#/definitions/vhd"
},
"caching": {
"type": "string"
},
"createOption": {
"type": "string"
}
},
"type": "object",
"required": ["name", "vhd", "createOption"]
},
"vhdUri": {
"properties": {
"uri": {
"type": "string"
}
},
"type": "object",
"required": ["uri"]
},
"dataDisk": {
"properties": {
"name": {
"type": "string"
},
"diskSizeGB": {
"type": "string"
},
"lun": {
"type": "number"
},
"vhd": {
"$ref": "#/definitions/vhdUri"
},
"caching": {
"type": "string"
},
"createOption": {
"type": "string"
}
},
"type": "object",
"required": ["name", "lun", "vhd", "createOption"]
},
"storageProfile": {
"properties": {
"imageReference": {
"$ref": "#/definitions/imageReference"
},
"osDisk": {
"$ref": "#/definitions/osDisk"
},
"dataDisks": {
"type": "array",
"items": {
"$ref": "#/definitions/dataDisk"
}
}
},
"type": "object",
"required": ["osDisk"]
},
"winRMListener": {
"properties": {
"protocol": {
"oneOf": [
{
"enum": ["http", "https"]
},
{
"$ref": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#/definitions/expression"
}
]
},
"certificateUrl": {
"type": "string"
}
},
"type": "object",
"required": ["protocol", "certificateUrl"]
},
"winRM": {
"properties": {
"listeners": {
"type": "array",
"items": {
"$ref": "#/definitions/winRMListener"
}
}
},
"type": "object",
"required": ["listeners"]
},
"additionalUnattendContent": {
"properties": {
"pass": {
"type": "string"
},
"component": {
"type": "string"
},
"settingName": {
"type": "string"
},
"content": {
"type": "string"
}
},
"type": "object",
"required": ["pass", "component", "settingName", "content"]
},
"windowsConfiguration": {
"properties": {
"provisionVMAgent": {
"type": "boolean"
},
"winRM": {
"$ref": "#/definitions/winRM"
},
"additionalUnattendContent": {
"type": "array",
"items": {
"$ref": "#/definitions/additionalUnattendContent"
}
},
"enableAutomaticUpdates": {
"type": "boolean"
}
},
"type": "object"
},
"publicKey": {
"properties": {
"path": {
"type": "string"
},
"keyData": {
"type": "string"
}
},
"type": "object"
},
"ssh": {
"properties": {
"publicKeys": {
"type": "array",
"items": {
"$ref": "#/definitions/publicKey"
}
}
},
"type": "object"
},
"linuxConfiguration": {
"properties": {
"disablePasswordAuthentication": {
"type": "string"
},
"ssh": {
"$ref": "#/definitions/ssh"
}
},
"type": "object"
},
"vaultCertificateUrl": {
"properties": {
"certificateUrl": {
"type": "string"
}
},
"type": "object",
"required": ["certificateUrl"]
},
"secret": {
"properties": {
"sourceVault": {
"$ref": "#/definitions/id"
},
"vaultCertificates": {
"type": "array",
"items": {
"$ref": "#/definitions/vaultCertificateUrl"
}
}
},
"type": "object",
"required": ["sourceVault", "vaultCertificates"]
},
"osProfile": {
"properties": {
"computerName": {
"type": "string"
},
"adminUsername": {
"type": "string"
},
"adminPassword": {
"type": "string"
},
"customData": {
"type": "string"
},
"windowsConfiguration": {
"$ref": "#/definitions/windowsConfiguration"
},
"linuxConfiguration": {
"$ref": "#/definitions/linuxConfiguration"
},
"secrets": {
"type": "array",
"items": {
"$ref": "#/definitions/secret"
}
}
},
"type": "object",
"required": ["computerName", "adminUsername", "adminPassword"]
},
"networkProfile": {
"properties": {
"networkInterfaces": {
"type": "array",
"items": {
"$ref": "#/definitions/networkInterfaces"
}
}
},
"type": "object",
"required": ["networkInterfaces"]
},
"sku": {
"properties": {
"name": {
"type": "string"
},
"tier": {
"type": "string"
},
"capacity": {
"type": "integer"
}
},
"type": "object",
"required": ["name", "capacity"]
},
"upgradePolicy": {
"properties": {
"mode": {
"type": "string"
}
},
"type": "object",
"required": ["mode"]
},
"virtualMachineScaleSetOsProfile": {
"properties": {
"computerNamePrefix": {
"type": "string"
},
"adminUsername": {
"type": "string"
},
"adminPassword": {
"type": "string"
},
"customData": {
"type": "string"
},
"windowsConfiguration": {
"$ref": "#/definitions/windowsConfiguration"
},
"linuxConfiguration": {
"$ref": "#/definitions/linuxConfiguration"
},
"secrets": {
"type": "array",
"items": {
"$ref": "#/definitions/secret"
}
}
},
"type": "object",
"required": ["computerNamePrefix", "adminUsername", "adminPassword"]
},
"virtualMachineScaleSetOSDisk": {
"properties": {
"osType": {
"type": "string"
},
"name": {
"type": "string"
},
"vhdContainers": {
"type": "array",
"items": {
"type": "string"
}
},
"caching": {
"type": "string"
},
"createOption": {
"type": "string"
}
},
"type": "object",
"required": ["name", "createOption"]
},
"virtualMachineScaleSetStorageProfile": {
"properties": {
"imageReference": {
"oneOf": [
{
"$ref": "#/definitions/imageReference"
},
{
"$ref": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#/definitions/expression"
}
]
},
"osDisk": {
"$ref": "#/definitions/virtualMachineScaleSetOSDisk"
}
},
"type": "object",
"required": ["osDisk"]
},
"virtualMachineScaleSetExtension": {
"properties": {
"name": {
"type": "string"
},
"properties": {
"properties": {
"publisher": {
"type": "string"
},
"type": {
"type": "string"
},
"typeHandlerVersion": {
"type": "string"
},
"settings": {
"type": "object"
}
},
"type": "object",
"required": ["publisher", "type", "typeHandlerVersion"]
}
}
},
"virtualMachineScaleSetExtensionProfile": {
"properties": {
"extensions": {
"type": "array",
"items": {
"$ref": "#/definitions/virtualMachineScaleSetExtension"
}
}
},
"type": "object"
},
"ipConfiguration": {
"properties": {
"name": {
"type": "string"
},
"subnet": {
"$ref": "#/definitions/id"
},
"loadBalancerBackendAddressPools": {
"type": "array",
"items": {
"$ref": "#/definitions/id"
}
}
},
"type": "object",
"required": ["name", "properties"]
},
"networkInterfaceConfiguration": {
"properties": {
"name": {
"type": "string"
},
"properties": {
"type": "object",
"properties": {
"primary": {
"type": "boolean"
},
"ipConfigurations": {
"type": "array",
"items": {
"$ref": "#/definitions/ipConfiguration"
}
}
},
"required": ["primary", "ipConfigurations"]
}
},
"type": "object",
"required": ["name", "properties"]
},
"virtualMachineScaleSetNetworkProfile": {
"properties": {
"networkInterfaceConfigurations": {
"type": "array",
"items": {
"$ref": "#/definitions/networkInterfaceConfiguration"
}
}
},
"type": "object",
"required": ["networkInterfaceConfigurations"]
},
"virtualMachineProfile": {
"properties": {
"osProfile": {
"$ref": "#/definitions/virtualMachineScaleSetOsProfile"
},
"storageProfile": {
"$ref": "#/definitions/virtualMachineScaleSetStorageProfile"
},
"extensionProfile": {
"$ref": "#/definitions/virtualMachineScaleSetExtensionProfile"
},
"networkProfile": {
"$ref": "#/definitions/virtualMachineScaleSetNetworkProfile"
}
},
"type": "object",
"required": ["osProfile", "storageProfile", "networkProfile"]
}
}
}