diff --git a/schemas/2018-02-01-preview/Microsoft.VirtualMachineImages.json b/schemas/2018-02-01-preview/Microsoft.VirtualMachineImages.json deleted file mode 100644 index e378f71eba..0000000000 --- a/schemas/2018-02-01-preview/Microsoft.VirtualMachineImages.json +++ /dev/null @@ -1,313 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2018-02-01-preview/Microsoft.VirtualMachineImages.json#", - "title": "Microsoft.VirtualMachineImages", - "description": "Microsoft VirtualMachineImages Resource Types", - "$schema": "http://json-schema.org/draft-04/schema#", - "resourceDefinitions": { - "imageTemplates": { - "description": "Microsoft.VirtualMachineImages/imageTemplates", - "properties": { - "apiVersion": { - "enum": [ - "2018-02-01-preview" - ], - "type": "string" - }, - "location": { - "description": "Resource location", - "type": "string" - }, - "name": { - "description": "The name of the image Template", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "tags": { - "description": "Resource tags", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "Microsoft.VirtualMachineImages/imageTemplates" - ], - "type": "string" - } - }, - "required": [ - "name", - "properties", - "apiVersion", - "type" - ], - "type": "object" - } - }, - "definitions": { - "ImageTemplateCustomizer": { - "oneOf": [ - { - "description": "Runs a shell script during the customization phase", - "properties": { - "script": { - "description": "The shell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "type": { - "enum": [ - "shell" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "name": { - "description": "Friendly Name to provide context on what this customization step does", - "type": "string" - } - }, - "type": "object" - }, - "ImageTemplateDistributor": { - "description": "Generic distribution object", - "oneOf": [ - { - "description": "Distribute as a Managed Disk Image.", - "properties": { - "imageId": { - "description": "Resource Id of the Managed Disk Image", - "type": "string" - }, - "location": { - "description": "Azure location for the image, should match if image already exists", - "type": "string" - }, - "type": { - "enum": [ - "managedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "location", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via Shared Image Gallery.", - "properties": { - "galleryImageId": { - "description": "Resource Id of the Shared Image Gallery image", - "type": "string" - }, - "replicationRegions": { - "description": "Array of ImageTemplateSharedImageDistributorReplicationRegionsItem", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "sharedImage" - ], - "type": "string" - } - }, - "required": [ - "galleryImageId", - "replicationRegions", - "type" - ], - "type": "object" - } - ], - "properties": { - "artifactTags": { - "description": "Tags that will be applied to the artifact once it has been created/updated by the distributor.", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runOutputName": { - "description": "The name to be used for the associated RunOutput.", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "runOutputName" - ], - "type": "object" - }, - "ImageTemplateProperties": { - "properties": { - "customize": { - "description": "Specifies the properties used to describe the customization steps of the image, like Image source etc", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateCustomizer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "distribute": { - "description": "The distribution targets where the image output needs to go to.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateDistributor" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "source": { - "description": "Specifies the properties used to describe the source image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateSource" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "source", - "distribute" - ], - "type": "object" - }, - "ImageTemplateSource": { - "oneOf": [ - { - "description": "Describes an image source that is an installation ISO. Currently only supports Red Hat Enterprise Linux 7.2-7.5 ISO's.", - "properties": { - "sha256Checksum": { - "description": "SHA256 Checksum of the ISO image.", - "type": "string" - }, - "sourceURI": { - "description": "URL to get the ISO image. This URL has to be accessible to the resource provider at the time of the imageTemplate creation.", - "type": "string" - }, - "type": { - "enum": [ - "ISO" - ], - "type": "string" - } - }, - "required": [ - "sourceURI", - "sha256Checksum", - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source from [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "properties": { - "offer": { - "description": "Image offer from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "publisher": { - "description": "Image Publisher in [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "sku": { - "description": "Image sku from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "type": { - "enum": [ - "PlatformImage" - ], - "type": "string" - }, - "version": { - "description": "Image version from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": {}, - "type": "object" - } - } -} \ No newline at end of file diff --git a/schemas/2019-02-01-preview/Microsoft.VirtualMachineImages.json b/schemas/2019-02-01-preview/Microsoft.VirtualMachineImages.json deleted file mode 100644 index 5d420a89b0..0000000000 --- a/schemas/2019-02-01-preview/Microsoft.VirtualMachineImages.json +++ /dev/null @@ -1,436 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2019-02-01-preview/Microsoft.VirtualMachineImages.json#", - "title": "Microsoft.VirtualMachineImages", - "description": "Microsoft VirtualMachineImages Resource Types", - "$schema": "http://json-schema.org/draft-04/schema#", - "resourceDefinitions": { - "imageTemplates": { - "description": "Microsoft.VirtualMachineImages/imageTemplates", - "properties": { - "apiVersion": { - "enum": [ - "2019-02-01-preview" - ], - "type": "string" - }, - "location": { - "description": "Resource location", - "type": "string" - }, - "name": { - "description": "The name of the image Template", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "tags": { - "description": "Resource tags", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "Microsoft.VirtualMachineImages/imageTemplates" - ], - "type": "string" - } - }, - "required": [ - "name", - "properties", - "apiVersion", - "type" - ], - "type": "object" - } - }, - "definitions": { - "ImageTemplateCustomizer": { - "oneOf": [ - { - "description": "Runs the specified PowerShell on the VM (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'script' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of PowerShell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "script": { - "description": "The PowerShell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "type": { - "enum": [ - "PowerShell" - ], - "type": "string" - }, - "validExitCodes": { - "description": "Valid exit codes for the PowerShell script. [Default: 0]", - "oneOf": [ - { - "items": { - "type": "integer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs a shell script during the customization phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'script' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of shell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "script": { - "description": "The shell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "type": { - "enum": [ - "Shell" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Reboots a VM and waits for it to come back online (Windows). Corresponds to Packer windows-restart provisioner", - "properties": { - "restartCheckCommand": { - "description": "Command to check if restart succeeded [Default: '']", - "type": "string" - }, - "restartCommand": { - "description": "Command to execute the restart [Default: 'shutdown /r /f /t 0 /c \"packer restart\"']", - "type": "string" - }, - "restartTimeout": { - "description": "Restart timeout specified as a string of magnitude and unit, e.g. '5m' (5 minutes) or '2h' (2 hours) [Default: '5m']", - "type": "string" - }, - "type": { - "enum": [ - "WindowsRestart" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "name": { - "description": "Friendly Name to provide context on what this customization step does", - "type": "string" - } - }, - "type": "object" - }, - "ImageTemplateDistributor": { - "description": "Generic distribution object", - "oneOf": [ - { - "description": "Distribute as a Managed Disk Image.", - "properties": { - "imageId": { - "description": "Resource Id of the Managed Disk Image", - "type": "string" - }, - "location": { - "description": "Azure location for the image, should match if image already exists", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "location", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via Shared Image Gallery.", - "properties": { - "galleryImageId": { - "description": "Resource Id of the Shared Image Gallery image", - "type": "string" - }, - "replicationRegions": { - "description": "Array of ImageTemplateSharedImageDistributorReplicationRegionsItem", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "SharedImage" - ], - "type": "string" - } - }, - "required": [ - "galleryImageId", - "replicationRegions", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via VHD in a storage account.", - "properties": { - "type": { - "enum": [ - "VHD" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "artifactTags": { - "description": "Tags that will be applied to the artifact once it has been created/updated by the distributor.", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runOutputName": { - "description": "The name to be used for the associated RunOutput.", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "runOutputName" - ], - "type": "object" - }, - "ImageTemplateProperties": { - "properties": { - "customize": { - "description": "Specifies the properties used to describe the customization steps of the image, like Image source etc", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateCustomizer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "distribute": { - "description": "The distribution targets where the image output needs to go to.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateDistributor" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "source": { - "description": "Specifies the properties used to describe the source image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateSource" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "source", - "distribute" - ], - "type": "object" - }, - "ImageTemplateSource": { - "oneOf": [ - { - "description": "Describes an image source that is an installation ISO. Currently only supports Red Hat Enterprise Linux 7.2-7.5 ISO's.", - "properties": { - "sha256Checksum": { - "description": "SHA256 Checksum of the ISO image.", - "type": "string" - }, - "sourceURI": { - "description": "URI to get the ISO image. This URI has to be accessible to the resource provider at the time of the image template creation.", - "type": "string" - }, - "type": { - "enum": [ - "ISO" - ], - "type": "string" - } - }, - "required": [ - "sourceURI", - "sha256Checksum", - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source that is a managed image in customer subscription.", - "properties": { - "imageId": { - "description": "ARM resource id of the managed image in customer subscription", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source from [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "properties": { - "offer": { - "description": "Image offer from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "publisher": { - "description": "Image Publisher in [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "sku": { - "description": "Image sku from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "type": { - "enum": [ - "PlatformImage" - ], - "type": "string" - }, - "version": { - "description": "Image version from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": {}, - "type": "object" - } - } -} \ No newline at end of file diff --git a/schemas/2019-05-01-preview/Microsoft.VirtualMachineImages.json b/schemas/2019-05-01-preview/Microsoft.VirtualMachineImages.json deleted file mode 100644 index b1a1a3f23a..0000000000 --- a/schemas/2019-05-01-preview/Microsoft.VirtualMachineImages.json +++ /dev/null @@ -1,591 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2019-05-01-preview/Microsoft.VirtualMachineImages.json#", - "title": "Microsoft.VirtualMachineImages", - "description": "Microsoft VirtualMachineImages Resource Types", - "$schema": "http://json-schema.org/draft-04/schema#", - "resourceDefinitions": { - "imageTemplates": { - "description": "Microsoft.VirtualMachineImages/imageTemplates", - "properties": { - "apiVersion": { - "enum": [ - "2019-05-01-preview" - ], - "type": "string" - }, - "identity": { - "description": "The identity of the image template, if configured.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "location": { - "description": "Resource location", - "type": "string" - }, - "name": { - "description": "The name of the image Template", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "description": "The properties of the image template", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "tags": { - "description": "Resource tags", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "Microsoft.VirtualMachineImages/imageTemplates" - ], - "type": "string" - } - }, - "required": [ - "name", - "properties", - "apiVersion", - "type" - ], - "type": "object" - } - }, - "definitions": { - "ComponentsVrq145SchemasImagetemplateidentityPropertiesUserassignedidentitiesAdditionalproperties": { - "properties": {}, - "type": "object" - }, - "ImageTemplateCustomizer": { - "description": "Describes a unit of image customization", - "oneOf": [ - { - "description": "Uploads files to VMs (Linux, Windows). Corresponds to Packer file provisioner", - "properties": { - "destination": { - "description": "The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the file provided in the sourceUri field above", - "type": "string" - }, - "sourceUri": { - "description": "The URI of the file to be uploaded for customizing the VM. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "type": { - "enum": [ - "File" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs the specified PowerShell on the VM (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of PowerShell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runElevated": { - "description": "If specified, the PowerShell script will be run with elevated privileges", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the PowerShell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the power shell script provided in the scriptUri field above", - "type": "string" - }, - "type": { - "enum": [ - "PowerShell" - ], - "type": "string" - }, - "validExitCodes": { - "description": "Valid exit codes for the PowerShell script. [Default: 0]", - "oneOf": [ - { - "items": { - "type": "integer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs a shell script during the customization phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of shell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the shell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the shell script provided in the scriptUri field", - "type": "string" - }, - "type": { - "enum": [ - "Shell" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Reboots a VM and waits for it to come back online (Windows). Corresponds to Packer windows-restart provisioner", - "properties": { - "restartCheckCommand": { - "description": "Command to check if restart succeeded [Default: '']", - "type": "string" - }, - "restartCommand": { - "description": "Command to execute the restart [Default: 'shutdown /r /f /t 0 /c \"packer restart\"']", - "type": "string" - }, - "restartTimeout": { - "description": "Restart timeout specified as a string of magnitude and unit, e.g. '5m' (5 minutes) or '2h' (2 hours) [Default: '5m']", - "type": "string" - }, - "type": { - "enum": [ - "WindowsRestart" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "name": { - "description": "Friendly Name to provide context on what this customization step does", - "type": "string" - } - }, - "type": "object" - }, - "ImageTemplateDistributor": { - "description": "Generic distribution object", - "oneOf": [ - { - "description": "Distribute as a Managed Disk Image.", - "properties": { - "imageId": { - "description": "Resource Id of the Managed Disk Image", - "type": "string" - }, - "location": { - "description": "Azure location for the image, should match if image already exists", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "location", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via Shared Image Gallery.", - "properties": { - "galleryImageId": { - "description": "Resource Id of the Shared Image Gallery image", - "type": "string" - }, - "replicationRegions": { - "description": "A list of regions that the image will be replicated to", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "SharedImage" - ], - "type": "string" - } - }, - "required": [ - "galleryImageId", - "replicationRegions", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via VHD in a storage account.", - "properties": { - "type": { - "enum": [ - "VHD" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "artifactTags": { - "description": "Tags that will be applied to the artifact once it has been created/updated by the distributor.", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runOutputName": { - "description": "The name to be used for the associated RunOutput.", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "runOutputName" - ], - "type": "object" - }, - "ImageTemplateIdentity": { - "description": "Identity for the image template.", - "properties": { - "type": { - "description": "The type of identity used for the image template. The type 'None' will remove any identities from the image template.", - "oneOf": [ - { - "enum": [ - "UserAssigned", - "None" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "userAssignedIdentities": { - "description": "The list of user identities associated with the image template. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", - "oneOf": [ - { - "additionalProperties": { - "$ref": "#/definitions/ComponentsVrq145SchemasImagetemplateidentityPropertiesUserassignedidentitiesAdditionalproperties" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplateProperties": { - "description": "Describes the properties of an image template", - "properties": { - "buildTimeoutInMinutes": { - "description": "Maximum duration to wait while building the image template. Omit or specify 0 to use the default (4 hours).", - "oneOf": [ - { - "maximum": 960, - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "customize": { - "description": "Specifies the properties used to describe the customization steps of the image, like Image source etc", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateCustomizer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "distribute": { - "description": "The distribution targets where the image output needs to go to.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateDistributor" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "source": { - "description": "Specifies the properties used to describe the source image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateSource" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "vmProfile": { - "description": "Describes how virtual machine is set up to build images", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateVmProfile" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "source", - "distribute" - ], - "type": "object" - }, - "ImageTemplateSource": { - "description": "Describes a virtual machine image source for building, customizing and distributing", - "oneOf": [ - { - "description": "Describes an image source that is an installation ISO. Currently only supports Red Hat Enterprise Linux 7.2-7.5 ISO's.", - "properties": { - "sha256Checksum": { - "description": "SHA256 Checksum of the ISO image.", - "type": "string" - }, - "sourceUri": { - "description": "URI to get the ISO image. This URI has to be accessible to the resource provider at the time of the image template creation.", - "type": "string" - }, - "type": { - "enum": [ - "ISO" - ], - "type": "string" - } - }, - "required": [ - "sourceUri", - "sha256Checksum", - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source that is a managed image in customer subscription.", - "properties": { - "imageId": { - "description": "ARM resource id of the managed image in customer subscription", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source from [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "properties": { - "offer": { - "description": "Image offer from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "publisher": { - "description": "Image Publisher in [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "sku": { - "description": "Image sku from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "type": { - "enum": [ - "PlatformImage" - ], - "type": "string" - }, - "version": { - "description": "Image version from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source that is an image version in a shared image gallery.", - "properties": { - "imageVersionId": { - "description": "ARM resource id of the image version in the shared image gallery", - "type": "string" - }, - "type": { - "enum": [ - "SharedImageVersion" - ], - "type": "string" - } - }, - "required": [ - "imageVersionId", - "type" - ], - "type": "object" - } - ], - "properties": {}, - "type": "object" - }, - "ImageTemplateVmProfile": { - "description": "Describes the virtual machine used to build, customize and capture images", - "properties": { - "vmSize": { - "description": "Size of the virtual machine used to build, customize and capture images. Omit or specify empty string to use the default (Standard_D1_v2).", - "type": "string" - } - }, - "type": "object" - } - } -} \ No newline at end of file diff --git a/schemas/2020-02-14/Microsoft.VirtualMachineImages.json b/schemas/2020-02-14/Microsoft.VirtualMachineImages.json deleted file mode 100644 index cdade8c819..0000000000 --- a/schemas/2020-02-14/Microsoft.VirtualMachineImages.json +++ /dev/null @@ -1,715 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2020-02-14/Microsoft.VirtualMachineImages.json#", - "title": "Microsoft.VirtualMachineImages", - "description": "Microsoft VirtualMachineImages Resource Types", - "$schema": "http://json-schema.org/draft-04/schema#", - "resourceDefinitions": { - "imageTemplates": { - "description": "Microsoft.VirtualMachineImages/imageTemplates", - "properties": { - "apiVersion": { - "enum": [ - "2020-02-14" - ], - "type": "string" - }, - "identity": { - "description": "The identity of the image template, if configured.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "location": { - "description": "Resource location", - "type": "string" - }, - "name": { - "description": "The name of the image Template", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "description": "The properties of the image template", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "tags": { - "description": "Resource tags", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "Microsoft.VirtualMachineImages/imageTemplates" - ], - "type": "string" - } - }, - "required": [ - "name", - "properties", - "apiVersion", - "type" - ], - "type": "object" - } - }, - "definitions": { - "ComponentsVrq145SchemasImagetemplateidentityPropertiesUserassignedidentitiesAdditionalproperties": { - "properties": {}, - "type": "object" - }, - "ImageTemplateCustomizer": { - "description": "Describes a unit of image customization", - "oneOf": [ - { - "description": "Uploads files to VMs (Linux, Windows). Corresponds to Packer file provisioner", - "properties": { - "destination": { - "description": "The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the file provided in the sourceUri field above", - "type": "string" - }, - "sourceUri": { - "description": "The URI of the file to be uploaded for customizing the VM. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "type": { - "enum": [ - "File" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs the specified PowerShell on the VM (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of PowerShell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runAsSystem": { - "description": "If specified, the PowerShell script will be run with elevated privileges using the Local System user. Can only be true when the runElevated field above is set to true.", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runElevated": { - "description": "If specified, the PowerShell script will be run with elevated privileges", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the PowerShell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the power shell script provided in the scriptUri field above", - "type": "string" - }, - "type": { - "enum": [ - "PowerShell" - ], - "type": "string" - }, - "validExitCodes": { - "description": "Valid exit codes for the PowerShell script. [Default: 0]", - "oneOf": [ - { - "items": { - "type": "integer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs a shell script during the customization phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of shell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the shell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the shell script provided in the scriptUri field", - "type": "string" - }, - "type": { - "enum": [ - "Shell" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Reboots a VM and waits for it to come back online (Windows). Corresponds to Packer windows-restart provisioner", - "properties": { - "restartCheckCommand": { - "description": "Command to check if restart succeeded [Default: '']", - "type": "string" - }, - "restartCommand": { - "description": "Command to execute the restart [Default: 'shutdown /r /f /t 0 /c \"packer restart\"']", - "type": "string" - }, - "restartTimeout": { - "description": "Restart timeout specified as a string of magnitude and unit, e.g. '5m' (5 minutes) or '2h' (2 hours) [Default: '5m']", - "type": "string" - }, - "type": { - "enum": [ - "WindowsRestart" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Installs Windows Updates. Corresponds to Packer Windows Update Provisioner (https://github.com/rgl/packer-provisioner-windows-update)", - "properties": { - "filters": { - "description": "Array of filters to select updates to apply. Omit or specify empty array to use the default (no filter). Refer to above link for examples and detailed description of this field.", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "searchCriteria": { - "description": "Criteria to search updates. Omit or specify empty string to use the default (search all). Refer to above link for examples and detailed description of this field.", - "type": "string" - }, - "type": { - "enum": [ - "WindowsUpdate" - ], - "type": "string" - }, - "updateLimit": { - "description": "Maximum number of updates to apply at a time. Omit or specify 0 to use the default (1000)", - "oneOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "name": { - "description": "Friendly Name to provide context on what this customization step does", - "type": "string" - } - }, - "type": "object" - }, - "ImageTemplateDistributor": { - "description": "Generic distribution object", - "oneOf": [ - { - "description": "Distribute as a Managed Disk Image.", - "properties": { - "imageId": { - "description": "Resource Id of the Managed Disk Image", - "type": "string" - }, - "location": { - "description": "Azure location for the image, should match if image already exists", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "location", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via Shared Image Gallery.", - "properties": { - "excludeFromLatest": { - "description": "Flag that indicates whether created image version should be excluded from latest. Omit to use the default (false).", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "galleryImageId": { - "description": "Resource Id of the Shared Image Gallery image", - "type": "string" - }, - "replicationRegions": { - "description": "A list of regions that the image will be replicated to", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "storageAccountType": { - "description": "Storage account type to be used to store the shared image. Omit to use the default (Standard_LRS).", - "oneOf": [ - { - "enum": [ - "Standard_LRS", - "Standard_ZRS" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "SharedImage" - ], - "type": "string" - } - }, - "required": [ - "galleryImageId", - "replicationRegions", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via VHD in a storage account.", - "properties": { - "type": { - "enum": [ - "VHD" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "artifactTags": { - "description": "Tags that will be applied to the artifact once it has been created/updated by the distributor.", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runOutputName": { - "description": "The name to be used for the associated RunOutput.", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "runOutputName" - ], - "type": "object" - }, - "ImageTemplateIdentity": { - "description": "Identity for the image template.", - "properties": { - "type": { - "description": "The type of identity used for the image template. The type 'None' will remove any identities from the image template.", - "oneOf": [ - { - "enum": [ - "UserAssigned", - "None" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "userAssignedIdentities": { - "description": "The list of user identities associated with the image template. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", - "oneOf": [ - { - "additionalProperties": { - "$ref": "#/definitions/ComponentsVrq145SchemasImagetemplateidentityPropertiesUserassignedidentitiesAdditionalproperties" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplateProperties": { - "description": "Describes the properties of an image template", - "properties": { - "buildTimeoutInMinutes": { - "description": "Maximum duration to wait while building the image template. Omit or specify 0 to use the default (4 hours).", - "oneOf": [ - { - "maximum": 960, - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "customize": { - "description": "Specifies the properties used to describe the customization steps of the image, like Image source etc", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateCustomizer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "distribute": { - "description": "The distribution targets where the image output needs to go to.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateDistributor" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "source": { - "description": "Specifies the properties used to describe the source image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateSource" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "vmProfile": { - "description": "Describes how virtual machine is set up to build images", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateVmProfile" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "source", - "distribute" - ], - "type": "object" - }, - "ImageTemplateSource": { - "description": "Describes a virtual machine image source for building, customizing and distributing", - "oneOf": [ - { - "description": "Describes an image source that is a managed image in customer subscription.", - "properties": { - "imageId": { - "description": "ARM resource id of the managed image in customer subscription", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source from [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "properties": { - "offer": { - "description": "Image offer from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "planInfo": { - "description": "Optional configuration of purchase plan for platform image.", - "oneOf": [ - { - "$ref": "#/definitions/PlatformImagePurchasePlan" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "publisher": { - "description": "Image Publisher in [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "sku": { - "description": "Image sku from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "type": { - "enum": [ - "PlatformImage" - ], - "type": "string" - }, - "version": { - "description": "Image version from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages). If 'latest' is specified here, the version is evaluated when the image build takes place, not when the template is submitted. Specifying 'latest' could cause ROUNDTRIP_INCONSISTENT_PROPERTY issue which will be fixed.", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source that is an image version in a shared image gallery.", - "properties": { - "imageVersionId": { - "description": "ARM resource id of the image version in the shared image gallery", - "type": "string" - }, - "type": { - "enum": [ - "SharedImageVersion" - ], - "type": "string" - } - }, - "required": [ - "imageVersionId", - "type" - ], - "type": "object" - } - ], - "properties": {}, - "type": "object" - }, - "ImageTemplateVmProfile": { - "description": "Describes the virtual machine used to build, customize and capture images", - "properties": { - "osDiskSizeGB": { - "description": "Size of the OS disk in GB. Omit or specify 0 to use Azure's default OS disk size.", - "oneOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "vmSize": { - "description": "Size of the virtual machine used to build, customize and capture images. Omit or specify empty string to use the default (Standard_D1_v2 for Gen1 images and Standard_D2ds_v4 for Gen2 images).", - "type": "string" - }, - "vnetConfig": { - "description": "Optional configuration of the virtual network to use to deploy the build virtual machine in. Omit if no specific virtual network needs to be used.", - "oneOf": [ - { - "$ref": "#/definitions/VirtualNetworkConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "PlatformImagePurchasePlan": { - "description": "Purchase plan configuration for platform image.", - "properties": { - "planName": { - "description": "Name of the purchase plan.", - "type": "string" - }, - "planProduct": { - "description": "Product of the purchase plan.", - "type": "string" - }, - "planPublisher": { - "description": "Publisher of the purchase plan.", - "type": "string" - } - }, - "required": [ - "planName", - "planProduct", - "planPublisher" - ], - "type": "object" - }, - "VirtualNetworkConfig": { - "description": "Virtual Network configuration.", - "properties": { - "subnetId": { - "description": "Resource id of a pre-existing subnet.", - "type": "string" - } - }, - "type": "object" - } - } -} \ No newline at end of file diff --git a/schemas/2021-10-01/Microsoft.VirtualMachineImages.json b/schemas/2021-10-01/Microsoft.VirtualMachineImages.json deleted file mode 100644 index d5551ea05f..0000000000 --- a/schemas/2021-10-01/Microsoft.VirtualMachineImages.json +++ /dev/null @@ -1,733 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.VirtualMachineImages.json#", - "title": "Microsoft.VirtualMachineImages", - "description": "Microsoft VirtualMachineImages Resource Types", - "$schema": "http://json-schema.org/draft-04/schema#", - "resourceDefinitions": { - "imageTemplates": { - "description": "Microsoft.VirtualMachineImages/imageTemplates", - "properties": { - "apiVersion": { - "enum": [ - "2021-10-01" - ], - "type": "string" - }, - "identity": { - "description": "The identity of the image template, if configured.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "location": { - "description": "The geo-location where the resource lives", - "type": "string" - }, - "name": { - "description": "The name of the image Template", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "description": "The properties of the image template", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "tags": { - "description": "Resource tags.", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "Microsoft.VirtualMachineImages/imageTemplates" - ], - "type": "string" - } - }, - "required": [ - "name", - "properties", - "apiVersion", - "type" - ], - "type": "object" - } - }, - "definitions": { - "ComponentsVrq145SchemasImagetemplateidentityPropertiesUserassignedidentitiesAdditionalproperties": { - "properties": {}, - "type": "object" - }, - "ImageTemplateCustomizer": { - "description": "Describes a unit of image customization", - "oneOf": [ - { - "description": "Uploads files to VMs (Linux, Windows). Corresponds to Packer file provisioner", - "properties": { - "destination": { - "description": "The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the file provided in the sourceUri field above", - "type": "string" - }, - "sourceUri": { - "description": "The URI of the file to be uploaded for customizing the VM. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "type": { - "enum": [ - "File" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs the specified PowerShell on the VM (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of PowerShell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runAsSystem": { - "description": "If specified, the PowerShell script will be run with elevated privileges using the Local System user. Can only be true when the runElevated field above is set to true.", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runElevated": { - "description": "If specified, the PowerShell script will be run with elevated privileges", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the PowerShell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the power shell script provided in the scriptUri field above", - "type": "string" - }, - "type": { - "enum": [ - "PowerShell" - ], - "type": "string" - }, - "validExitCodes": { - "description": "Valid exit codes for the PowerShell script. [Default: 0]", - "oneOf": [ - { - "items": { - "type": "integer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs a shell script during the customization phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of shell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the shell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the shell script provided in the scriptUri field", - "type": "string" - }, - "type": { - "enum": [ - "Shell" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Reboots a VM and waits for it to come back online (Windows). Corresponds to Packer windows-restart provisioner", - "properties": { - "restartCheckCommand": { - "description": "Command to check if restart succeeded [Default: '']", - "type": "string" - }, - "restartCommand": { - "description": "Command to execute the restart [Default: 'shutdown /r /f /t 0 /c \"packer restart\"']", - "type": "string" - }, - "restartTimeout": { - "description": "Restart timeout specified as a string of magnitude and unit, e.g. '5m' (5 minutes) or '2h' (2 hours) [Default: '5m']", - "type": "string" - }, - "type": { - "enum": [ - "WindowsRestart" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Installs Windows Updates. Corresponds to Packer Windows Update Provisioner (https://github.com/rgl/packer-provisioner-windows-update)", - "properties": { - "filters": { - "description": "Array of filters to select updates to apply. Omit or specify empty array to use the default (no filter). Refer to above link for examples and detailed description of this field.", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "searchCriteria": { - "description": "Criteria to search updates. Omit or specify empty string to use the default (search all). Refer to above link for examples and detailed description of this field.", - "type": "string" - }, - "type": { - "enum": [ - "WindowsUpdate" - ], - "type": "string" - }, - "updateLimit": { - "description": "Maximum number of updates to apply at a time. Omit or specify 0 to use the default (1000)", - "oneOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "name": { - "description": "Friendly Name to provide context on what this customization step does", - "type": "string" - } - }, - "type": "object" - }, - "ImageTemplateDistributor": { - "description": "Generic distribution object", - "oneOf": [ - { - "description": "Distribute as a Managed Disk Image.", - "properties": { - "imageId": { - "description": "Resource Id of the Managed Disk Image", - "type": "string" - }, - "location": { - "description": "Azure location for the image, should match if image already exists", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "location", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via Shared Image Gallery.", - "properties": { - "excludeFromLatest": { - "description": "Flag that indicates whether created image version should be excluded from latest. Omit to use the default (false).", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "galleryImageId": { - "description": "Resource Id of the Shared Image Gallery image", - "type": "string" - }, - "replicationRegions": { - "description": "A list of regions that the image will be replicated to", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "storageAccountType": { - "description": "Storage account type to be used to store the shared image. Omit to use the default (Standard_LRS).", - "oneOf": [ - { - "enum": [ - "Standard_LRS", - "Standard_ZRS" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "SharedImage" - ], - "type": "string" - } - }, - "required": [ - "galleryImageId", - "replicationRegions", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via VHD in a storage account.", - "properties": { - "type": { - "enum": [ - "VHD" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "artifactTags": { - "description": "Tags that will be applied to the artifact once it has been created/updated by the distributor.", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runOutputName": { - "description": "The name to be used for the associated RunOutput.", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "runOutputName" - ], - "type": "object" - }, - "ImageTemplateIdentity": { - "description": "Identity for the image template.", - "properties": { - "type": { - "description": "The type of identity used for the image template. The type 'None' will remove any identities from the image template.", - "oneOf": [ - { - "enum": [ - "UserAssigned", - "None" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "userAssignedIdentities": { - "description": "The list of user identities associated with the image template. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", - "oneOf": [ - { - "additionalProperties": { - "$ref": "#/definitions/ComponentsVrq145SchemasImagetemplateidentityPropertiesUserassignedidentitiesAdditionalproperties" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplateProperties": { - "description": "Describes the properties of an image template", - "properties": { - "buildTimeoutInMinutes": { - "description": "Maximum duration to wait while building the image template. Omit or specify 0 to use the default (4 hours).", - "oneOf": [ - { - "maximum": 960, - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "customize": { - "description": "Specifies the properties used to describe the customization steps of the image, like Image source etc", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateCustomizer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "distribute": { - "description": "The distribution targets where the image output needs to go to.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateDistributor" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "source": { - "description": "Specifies the properties used to describe the source image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateSource" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "vmProfile": { - "description": "Describes how virtual machine is set up to build images", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateVmProfile" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "source", - "distribute" - ], - "type": "object" - }, - "ImageTemplateSource": { - "description": "Describes a virtual machine image source for building, customizing and distributing", - "oneOf": [ - { - "description": "Describes an image source that is a managed image in customer subscription.", - "properties": { - "imageId": { - "description": "ARM resource id of the managed image in customer subscription", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source from [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "properties": { - "offer": { - "description": "Image offer from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "planInfo": { - "description": "Optional configuration of purchase plan for platform image.", - "oneOf": [ - { - "$ref": "#/definitions/PlatformImagePurchasePlan" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "publisher": { - "description": "Image Publisher in [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "sku": { - "description": "Image sku from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "type": { - "enum": [ - "PlatformImage" - ], - "type": "string" - }, - "version": { - "description": "Image version from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages). If 'latest' is specified here, the version is evaluated when the image build takes place, not when the template is submitted.", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source that is an image version in a shared image gallery.", - "properties": { - "imageVersionId": { - "description": "ARM resource id of the image version in the shared image gallery", - "type": "string" - }, - "type": { - "enum": [ - "SharedImageVersion" - ], - "type": "string" - } - }, - "required": [ - "imageVersionId", - "type" - ], - "type": "object" - } - ], - "properties": {}, - "type": "object" - }, - "ImageTemplateVmProfile": { - "description": "Describes the virtual machine used to build, customize and capture images", - "properties": { - "osDiskSizeGB": { - "description": "Size of the OS disk in GB. Omit or specify 0 to use Azure's default OS disk size.", - "oneOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "userAssignedIdentities": { - "description": "Optional array of resource IDs of user assigned managed identities to be configured on the build VM. This may include the identity of the image template.", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "vmSize": { - "description": "Size of the virtual machine used to build, customize and capture images. Omit or specify empty string to use the default (Standard_D2ds_v4).", - "type": "string" - }, - "vnetConfig": { - "description": "Optional configuration of the virtual network to use to deploy the build virtual machine in. Omit if no specific virtual network needs to be used.", - "oneOf": [ - { - "$ref": "#/definitions/VirtualNetworkConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "PlatformImagePurchasePlan": { - "description": "Purchase plan configuration for platform image.", - "properties": { - "planName": { - "description": "Name of the purchase plan.", - "type": "string" - }, - "planProduct": { - "description": "Product of the purchase plan.", - "type": "string" - }, - "planPublisher": { - "description": "Publisher of the purchase plan.", - "type": "string" - } - }, - "required": [ - "planName", - "planProduct", - "planPublisher" - ], - "type": "object" - }, - "VirtualNetworkConfig": { - "description": "Virtual Network configuration.", - "properties": { - "proxyVmSize": { - "description": "Size of the virtual machine used to build, customize and capture images. Omit or specify empty string to use the default (Standard_D1_v2 for Gen1 images and Standard_D2ds_v4 for Gen2 images).", - "type": "string" - }, - "subnetId": { - "description": "Resource id of a pre-existing subnet.", - "type": "string" - } - }, - "type": "object" - } - } -} \ No newline at end of file diff --git a/schemas/2022-02-14/Microsoft.VirtualMachineImages.json b/schemas/2022-02-14/Microsoft.VirtualMachineImages.json deleted file mode 100644 index 217ccf41a5..0000000000 --- a/schemas/2022-02-14/Microsoft.VirtualMachineImages.json +++ /dev/null @@ -1,913 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2022-02-14/Microsoft.VirtualMachineImages.json#", - "title": "Microsoft.VirtualMachineImages", - "description": "Microsoft VirtualMachineImages Resource Types", - "$schema": "http://json-schema.org/draft-04/schema#", - "resourceDefinitions": { - "imageTemplates": { - "description": "Microsoft.VirtualMachineImages/imageTemplates", - "properties": { - "apiVersion": { - "enum": [ - "2022-02-14" - ], - "type": "string" - }, - "identity": { - "description": "The identity of the image template, if configured.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "location": { - "description": "The geo-location where the resource lives", - "type": "string" - }, - "name": { - "description": "The name of the image Template", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "description": "The properties of the image template", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "tags": { - "description": "Resource tags.", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "Microsoft.VirtualMachineImages/imageTemplates" - ], - "type": "string" - } - }, - "required": [ - "name", - "properties", - "apiVersion", - "type" - ], - "type": "object" - } - }, - "definitions": { - "ImageTemplateCustomizer": { - "description": "Describes a unit of image customization", - "oneOf": [ - { - "description": "Uploads files to VMs (Linux, Windows). Corresponds to Packer file provisioner", - "properties": { - "destination": { - "description": "The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the file provided in the sourceUri field above", - "type": "string" - }, - "sourceUri": { - "description": "The URI of the file to be uploaded for customizing the VM. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "type": { - "enum": [ - "File" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs the specified PowerShell on the VM (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of PowerShell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runAsSystem": { - "description": "If specified, the PowerShell script will be run with elevated privileges using the Local System user. Can only be true when the runElevated field above is set to true.", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runElevated": { - "description": "If specified, the PowerShell script will be run with elevated privileges", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the PowerShell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the power shell script provided in the scriptUri field above", - "type": "string" - }, - "type": { - "enum": [ - "PowerShell" - ], - "type": "string" - }, - "validExitCodes": { - "description": "Valid exit codes for the PowerShell script. [Default: 0]", - "oneOf": [ - { - "items": { - "type": "integer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs a shell script during the customization phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of shell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the shell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the shell script provided in the scriptUri field", - "type": "string" - }, - "type": { - "enum": [ - "Shell" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Reboots a VM and waits for it to come back online (Windows). Corresponds to Packer windows-restart provisioner", - "properties": { - "restartCheckCommand": { - "description": "Command to check if restart succeeded [Default: '']", - "type": "string" - }, - "restartCommand": { - "description": "Command to execute the restart [Default: 'shutdown /r /f /t 0 /c \"packer restart\"']", - "type": "string" - }, - "restartTimeout": { - "description": "Restart timeout specified as a string of magnitude and unit, e.g. '5m' (5 minutes) or '2h' (2 hours) [Default: '5m']", - "type": "string" - }, - "type": { - "enum": [ - "WindowsRestart" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Installs Windows Updates. Corresponds to Packer Windows Update Provisioner (https://github.com/rgl/packer-provisioner-windows-update)", - "properties": { - "filters": { - "description": "Array of filters to select updates to apply. Omit or specify empty array to use the default (no filter). Refer to above link for examples and detailed description of this field.", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "searchCriteria": { - "description": "Criteria to search updates. Omit or specify empty string to use the default (search all). Refer to above link for examples and detailed description of this field.", - "type": "string" - }, - "type": { - "enum": [ - "WindowsUpdate" - ], - "type": "string" - }, - "updateLimit": { - "description": "Maximum number of updates to apply at a time. Omit or specify 0 to use the default (1000)", - "oneOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "name": { - "description": "Friendly Name to provide context on what this customization step does", - "type": "string" - } - }, - "type": "object" - }, - "ImageTemplateDistributor": { - "description": "Generic distribution object", - "oneOf": [ - { - "description": "Distribute as a Managed Disk Image.", - "properties": { - "imageId": { - "description": "Resource Id of the Managed Disk Image", - "type": "string" - }, - "location": { - "description": "Azure location for the image, should match if image already exists", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "location", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via Shared Image Gallery.", - "properties": { - "excludeFromLatest": { - "description": "Flag that indicates whether created image version should be excluded from latest. Omit to use the default (false).", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "galleryImageId": { - "description": "Resource Id of the Shared Image Gallery image", - "type": "string" - }, - "replicationRegions": { - "description": "A list of regions that the image will be replicated to", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "storageAccountType": { - "description": "Storage account type to be used to store the shared image. Omit to use the default (Standard_LRS).", - "oneOf": [ - { - "enum": [ - "Standard_LRS", - "Standard_ZRS" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "SharedImage" - ], - "type": "string" - } - }, - "required": [ - "galleryImageId", - "replicationRegions", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via VHD in a storage account.", - "properties": { - "type": { - "enum": [ - "VHD" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "artifactTags": { - "description": "Tags that will be applied to the artifact once it has been created/updated by the distributor.", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runOutputName": { - "description": "The name to be used for the associated RunOutput.", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "runOutputName" - ], - "type": "object" - }, - "ImageTemplateIdentity": { - "description": "Identity for the image template.", - "properties": { - "type": { - "description": "The type of identity used for the image template. The type 'None' will remove any identities from the image template.", - "oneOf": [ - { - "enum": [ - "UserAssigned", - "None" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "userAssignedIdentities": { - "description": "The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.", - "oneOf": [ - { - "additionalProperties": { - "$ref": "#/definitions/UserAssignedIdentity" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplateInVMValidator": { - "description": "Describes a unit of in-VM validation of image", - "oneOf": [ - { - "description": "Runs the specified PowerShell script during the validation phase (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of PowerShell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runAsSystem": { - "description": "If specified, the PowerShell script will be run with elevated privileges using the Local System user. Can only be true when the runElevated field above is set to true.", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runElevated": { - "description": "If specified, the PowerShell script will be run with elevated privileges", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the PowerShell script to be run for validation. It can be a github link, Azure Storage URI, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the power shell script provided in the scriptUri field above", - "type": "string" - }, - "type": { - "enum": [ - "PowerShell" - ], - "type": "string" - }, - "validExitCodes": { - "description": "Valid exit codes for the PowerShell script. [Default: 0]", - "oneOf": [ - { - "items": { - "type": "integer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs the specified shell script during the validation phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of shell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the shell script to be run for validation. It can be a github link, Azure Storage URI, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the shell script provided in the scriptUri field", - "type": "string" - }, - "type": { - "enum": [ - "Shell" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "name": { - "description": "Friendly Name to provide context on what this validation step does", - "type": "string" - } - }, - "type": "object" - }, - "ImageTemplateProperties": { - "description": "Describes the properties of an image template", - "properties": { - "buildTimeoutInMinutes": { - "description": "Maximum duration to wait while building the image template (includes all customizations, validations, and distributions). Omit or specify 0 to use the default (4 hours).", - "oneOf": [ - { - "maximum": 960, - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "customize": { - "description": "Specifies the properties used to describe the customization steps of the image, like Image source etc", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateCustomizer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "distribute": { - "description": "The distribution targets where the image output needs to go to.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateDistributor" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "source": { - "description": "Specifies the properties used to describe the source image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateSource" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "stagingResourceGroup": { - "description": "The staging resource group id in the same subscription as the image template that will be used to build the image. If this field is empty, a resource group with a random name will be created. If the resource group specified in this field doesn't exist, it will be created with the same name. If the resource group specified exists, it must be empty and in the same region as the image template. The resource group created will be deleted during template deletion if this field is empty or the resource group specified doesn't exist, but if the resource group specified exists the resources created in the resource group will be deleted during template deletion and the resource group itself will remain.", - "type": "string" - }, - "validate": { - "description": "Configuration options and list of validations to be performed on the resulting image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplatePropertiesValidate" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "vmProfile": { - "description": "Describes how virtual machine is set up to build images", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateVmProfile" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "source", - "distribute" - ], - "type": "object" - }, - "ImageTemplatePropertiesValidate": { - "description": "Configuration options and list of validations to be performed on the resulting image.", - "properties": { - "continueDistributeOnFailure": { - "description": "If validation fails and this field is set to false, output image(s) will not be distributed. This is the default behavior. If validation fails and this field is set to true, output image(s) will still be distributed. Please use this option with caution as it may result in bad images being distributed for use. In either case (true or false), the end to end image run will be reported as having failed in case of a validation failure. [Note: This field has no effect if validation succeeds.]", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "inVMValidations": { - "description": "List of validations to be performed.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateInVMValidator" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "sourceValidationOnly": { - "description": "If this field is set to true, the image specified in the 'source' section will directly be validated. No separate build will be run to generate and then validate a customized image.", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplateSource": { - "description": "Describes a virtual machine image source for building, customizing and distributing", - "oneOf": [ - { - "description": "Describes an image source that is a managed image in customer subscription. This image must reside in the same subscription and region as the Image Builder template.", - "properties": { - "imageId": { - "description": "ARM resource id of the managed image in customer subscription", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source from [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "properties": { - "offer": { - "description": "Image offer from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "planInfo": { - "description": "Optional configuration of purchase plan for platform image.", - "oneOf": [ - { - "$ref": "#/definitions/PlatformImagePurchasePlan" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "publisher": { - "description": "Image Publisher in [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "sku": { - "description": "Image sku from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "type": { - "enum": [ - "PlatformImage" - ], - "type": "string" - }, - "version": { - "description": "Image version from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages). If 'latest' is specified here, the version is evaluated when the image build takes place, not when the template is submitted.", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source that is an image version in a shared image gallery.", - "properties": { - "imageVersionId": { - "description": "ARM resource id of the image version in the shared image gallery", - "type": "string" - }, - "type": { - "enum": [ - "SharedImageVersion" - ], - "type": "string" - } - }, - "required": [ - "imageVersionId", - "type" - ], - "type": "object" - } - ], - "properties": {}, - "type": "object" - }, - "ImageTemplateVmProfile": { - "description": "Describes the virtual machines used to build and validate images", - "properties": { - "osDiskSizeGB": { - "description": "Size of the OS disk in GB. Omit or specify 0 to use Azure's default OS disk size.", - "oneOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "userAssignedIdentities": { - "description": "Optional array of resource IDs of user assigned managed identities to be configured on the build VM and validation VM. This may include the identity of the image template.", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "vmSize": { - "description": "Size of the virtual machine used to build, customize and capture images. Omit or specify empty string to use the default (Standard_D1_v2 for Gen1 images and Standard_D2ds_v4 for Gen2 images).", - "type": "string" - }, - "vnetConfig": { - "description": "Optional configuration of the virtual network to use to deploy the build VM and validation VM in. Omit if no specific virtual network needs to be used.", - "oneOf": [ - { - "$ref": "#/definitions/VirtualNetworkConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "PlatformImagePurchasePlan": { - "description": "Purchase plan configuration for platform image.", - "properties": { - "planName": { - "description": "Name of the purchase plan.", - "type": "string" - }, - "planProduct": { - "description": "Product of the purchase plan.", - "type": "string" - }, - "planPublisher": { - "description": "Publisher of the purchase plan.", - "type": "string" - } - }, - "required": [ - "planName", - "planProduct", - "planPublisher" - ], - "type": "object" - }, - "UserAssignedIdentity": { - "description": "User assigned identity properties", - "properties": {}, - "type": "object" - }, - "VirtualNetworkConfig": { - "description": "Virtual Network configuration.", - "properties": { - "proxyVmSize": { - "description": "Size of the proxy virtual machine used to pass traffic to the build VM and validation VM. Omit or specify empty string to use the default (Standard_A1_v2).", - "type": "string" - }, - "subnetId": { - "description": "Resource id of a pre-existing subnet.", - "type": "string" - } - }, - "type": "object" - } - } -} \ No newline at end of file diff --git a/schemas/2022-07-01/Microsoft.VirtualMachineImages.json b/schemas/2022-07-01/Microsoft.VirtualMachineImages.json deleted file mode 100644 index 6cb2b04c6f..0000000000 --- a/schemas/2022-07-01/Microsoft.VirtualMachineImages.json +++ /dev/null @@ -1,1234 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2022-07-01/Microsoft.VirtualMachineImages.json#", - "title": "Microsoft.VirtualMachineImages", - "description": "Microsoft VirtualMachineImages Resource Types", - "$schema": "http://json-schema.org/draft-04/schema#", - "resourceDefinitions": { - "imageTemplates": { - "description": "Microsoft.VirtualMachineImages/imageTemplates", - "properties": { - "apiVersion": { - "enum": [ - "2022-07-01" - ], - "type": "string" - }, - "identity": { - "description": "The identity of the image template, if configured.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "location": { - "description": "The geo-location where the resource lives", - "type": "string" - }, - "name": { - "description": "The name of the image Template", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "description": "The properties of the image template", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "resources": { - "items": { - "oneOf": [ - { - "$ref": "#/definitions/imageTemplates_triggers_childResource" - } - ] - }, - "type": "array" - }, - "tags": { - "description": "Resource tags.", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "Microsoft.VirtualMachineImages/imageTemplates" - ], - "type": "string" - } - }, - "required": [ - "name", - "properties", - "apiVersion", - "type" - ], - "type": "object" - }, - "imageTemplates_triggers": { - "description": "Microsoft.VirtualMachineImages/imageTemplates/triggers", - "properties": { - "apiVersion": { - "enum": [ - "2022-07-01" - ], - "type": "string" - }, - "name": { - "description": "The name of the trigger", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "description": "The properties of a trigger", - "oneOf": [ - { - "$ref": "#/definitions/TriggerProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "Microsoft.VirtualMachineImages/imageTemplates/triggers" - ], - "type": "string" - } - }, - "required": [ - "name", - "properties", - "apiVersion", - "type" - ], - "type": "object" - } - }, - "definitions": { - "DistributeVersioner": { - "description": "Describes how to generate new x.y.z version number for distribution.", - "oneOf": [ - { - "description": "Generates version number that will be latest based on existing version numbers.", - "properties": { - "major": { - "description": "Major version for the generated version number. Determine what is \"latest\" based on versions with this value as the major version. -1 is equivalent to leaving it unset.", - "oneOf": [ - { - "minimum": -1, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scheme": { - "enum": [ - "Latest" - ], - "type": "string" - } - }, - "required": [ - "scheme" - ], - "type": "object" - }, - { - "description": "Generates version number based on version number of source image", - "properties": { - "scheme": { - "enum": [ - "Source" - ], - "type": "string" - } - }, - "required": [ - "scheme" - ], - "type": "object" - } - ], - "properties": {}, - "type": "object" - }, - "ImageTemplateCustomizer": { - "description": "Describes a unit of image customization", - "oneOf": [ - { - "description": "Uploads files to VMs (Linux, Windows). Corresponds to Packer file provisioner", - "properties": { - "destination": { - "description": "The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the file provided in the sourceUri field above", - "type": "string" - }, - "sourceUri": { - "description": "The URI of the file to be uploaded for customizing the VM. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "type": { - "enum": [ - "File" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs the specified PowerShell on the VM (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of PowerShell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runAsSystem": { - "description": "If specified, the PowerShell script will be run with elevated privileges using the Local System user. Can only be true when the runElevated field above is set to true.", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runElevated": { - "description": "If specified, the PowerShell script will be run with elevated privileges", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the PowerShell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the power shell script provided in the scriptUri field above", - "type": "string" - }, - "type": { - "enum": [ - "PowerShell" - ], - "type": "string" - }, - "validExitCodes": { - "description": "Valid exit codes for the PowerShell script. [Default: 0]", - "oneOf": [ - { - "items": { - "type": "integer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs a shell script during the customization phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of shell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the shell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the shell script provided in the scriptUri field", - "type": "string" - }, - "type": { - "enum": [ - "Shell" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Reboots a VM and waits for it to come back online (Windows). Corresponds to Packer windows-restart provisioner", - "properties": { - "restartCheckCommand": { - "description": "Command to check if restart succeeded [Default: '']", - "type": "string" - }, - "restartCommand": { - "description": "Command to execute the restart [Default: 'shutdown /r /f /t 0 /c \"packer restart\"']", - "type": "string" - }, - "restartTimeout": { - "description": "Restart timeout specified as a string of magnitude and unit, e.g. '5m' (5 minutes) or '2h' (2 hours) [Default: '5m']", - "type": "string" - }, - "type": { - "enum": [ - "WindowsRestart" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Installs Windows Updates. Corresponds to Packer Windows Update Provisioner (https://github.com/rgl/packer-provisioner-windows-update)", - "properties": { - "filters": { - "description": "Array of filters to select updates to apply. Omit or specify empty array to use the default (no filter). Refer to above link for examples and detailed description of this field.", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "searchCriteria": { - "description": "Criteria to search updates. Omit or specify empty string to use the default (search all). Refer to above link for examples and detailed description of this field.", - "type": "string" - }, - "type": { - "enum": [ - "WindowsUpdate" - ], - "type": "string" - }, - "updateLimit": { - "description": "Maximum number of updates to apply at a time. Omit or specify 0 to use the default (1000)", - "oneOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "name": { - "description": "Friendly Name to provide context on what this customization step does", - "type": "string" - } - }, - "type": "object" - }, - "ImageTemplateDistributor": { - "description": "Generic distribution object", - "oneOf": [ - { - "description": "Distribute as a Managed Disk Image.", - "properties": { - "imageId": { - "description": "Resource Id of the Managed Disk Image", - "type": "string" - }, - "location": { - "description": "Azure location for the image, should match if image already exists", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "location", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via Azure Compute Gallery.", - "properties": { - "excludeFromLatest": { - "description": "Flag that indicates whether created image version should be excluded from latest. Omit to use the default (false).", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "galleryImageId": { - "description": "Resource Id of the Azure Compute Gallery image", - "type": "string" - }, - "replicationRegions": { - "description": "[Deprecated] A list of regions that the image will be replicated to. This list can be specified only if targetRegions is not specified. This field is deprecated - use targetRegions instead.", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "storageAccountType": { - "description": "[Deprecated] Storage account type to be used to store the shared image. Omit to use the default (Standard_LRS). This field can be specified only if replicationRegions is specified. This field is deprecated - use targetRegions instead.", - "oneOf": [ - { - "enum": [ - "Standard_LRS", - "Standard_ZRS", - "Premium_LRS" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "targetRegions": { - "description": "The target regions where the distributed Image Version is going to be replicated to. This object supersedes replicationRegions and can be specified only if replicationRegions is not specified.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/TargetRegion" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "SharedImage" - ], - "type": "string" - }, - "versioning": { - "description": "Describes how to generate new x.y.z version number for distribution.", - "oneOf": [ - { - "$ref": "#/definitions/DistributeVersioner" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "galleryImageId", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via VHD in a storage account.", - "properties": { - "type": { - "enum": [ - "VHD" - ], - "type": "string" - }, - "uri": { - "description": "Optional Azure Storage URI for the distributed VHD blob. Omit to use the default (empty string) in which case VHD would be published to the storage account in the staging resource group.", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "artifactTags": { - "description": "Tags that will be applied to the artifact once it has been created/updated by the distributor.", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runOutputName": { - "description": "The name to be used for the associated RunOutput.", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "runOutputName" - ], - "type": "object" - }, - "ImageTemplateIdentity": { - "description": "Identity for the image template.", - "properties": { - "type": { - "description": "The type of identity used for the image template. The type 'None' will remove any identities from the image template.", - "oneOf": [ - { - "enum": [ - "UserAssigned", - "None" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "userAssignedIdentities": { - "description": "The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.", - "oneOf": [ - { - "additionalProperties": { - "$ref": "#/definitions/UserAssignedIdentity" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplateInVMValidator": { - "description": "Describes a unit of in-VM validation of image", - "oneOf": [ - { - "description": "Uploads files required for validation to VMs (Linux, Windows). Corresponds to Packer file provisioner", - "properties": { - "destination": { - "description": "The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the file provided in the sourceUri field above", - "type": "string" - }, - "sourceUri": { - "description": "The URI of the file to be uploaded to the VM for validation. It can be a github link, Azure Storage URI (authorized or SAS), etc", - "type": "string" - }, - "type": { - "enum": [ - "File" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs the specified PowerShell script during the validation phase (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of PowerShell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runAsSystem": { - "description": "If specified, the PowerShell script will be run with elevated privileges using the Local System user. Can only be true when the runElevated field above is set to true.", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runElevated": { - "description": "If specified, the PowerShell script will be run with elevated privileges", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the PowerShell script to be run for validation. It can be a github link, Azure Storage URI, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the power shell script provided in the scriptUri field above", - "type": "string" - }, - "type": { - "enum": [ - "PowerShell" - ], - "type": "string" - }, - "validExitCodes": { - "description": "Valid exit codes for the PowerShell script. [Default: 0]", - "oneOf": [ - { - "items": { - "type": "integer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs the specified shell script during the validation phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of shell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the shell script to be run for validation. It can be a github link, Azure Storage URI, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the shell script provided in the scriptUri field", - "type": "string" - }, - "type": { - "enum": [ - "Shell" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "name": { - "description": "Friendly Name to provide context on what this validation step does", - "type": "string" - } - }, - "type": "object" - }, - "ImageTemplateProperties": { - "description": "Describes the properties of an image template", - "properties": { - "buildTimeoutInMinutes": { - "description": "Maximum duration to wait while building the image template (includes all customizations, optimization, validations, and distributions). Omit or specify 0 to use the default (4 hours).", - "oneOf": [ - { - "maximum": 960, - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "customize": { - "description": "Specifies the properties used to describe the customization steps of the image, like Image source etc", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateCustomizer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "distribute": { - "description": "The distribution targets where the image output needs to go to.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateDistributor" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "optimize": { - "description": "Specifies optimization to be performed on image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplatePropertiesOptimize" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "source": { - "description": "Specifies the properties used to describe the source image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateSource" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "stagingResourceGroup": { - "description": "The staging resource group id in the same subscription as the image template that will be used to build the image. If this field is empty, a resource group with a random name will be created. If the resource group specified in this field doesn't exist, it will be created with the same name. If the resource group specified exists, it must be empty and in the same region as the image template. The resource group created will be deleted during template deletion if this field is empty or the resource group specified doesn't exist, but if the resource group specified exists the resources created in the resource group will be deleted during template deletion and the resource group itself will remain.", - "type": "string" - }, - "validate": { - "description": "Configuration options and list of validations to be performed on the resulting image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplatePropertiesValidate" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "vmProfile": { - "description": "Describes how virtual machine is set up to build images", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateVmProfile" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "source", - "distribute" - ], - "type": "object" - }, - "ImageTemplatePropertiesOptimize": { - "description": "Specifies optimization to be performed on image.", - "properties": { - "vmBoot": { - "description": "Optimization is applied on the image for a faster VM boot.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplatePropertiesOptimizeVmBoot" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplatePropertiesOptimizeVmBoot": { - "description": "Optimization is applied on the image for a faster VM boot.", - "properties": { - "state": { - "description": "Enabling this field will improve VM boot time by optimizing the final customized image output.", - "oneOf": [ - { - "enum": [ - "Enabled", - "Disabled" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplatePropertiesValidate": { - "description": "Configuration options and list of validations to be performed on the resulting image.", - "properties": { - "continueDistributeOnFailure": { - "description": "If validation fails and this field is set to false, output image(s) will not be distributed. This is the default behavior. If validation fails and this field is set to true, output image(s) will still be distributed. Please use this option with caution as it may result in bad images being distributed for use. In either case (true or false), the end to end image run will be reported as having failed in case of a validation failure. [Note: This field has no effect if validation succeeds.]", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "inVMValidations": { - "description": "List of validations to be performed.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateInVMValidator" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "sourceValidationOnly": { - "description": "If this field is set to true, the image specified in the 'source' section will directly be validated. No separate build will be run to generate and then validate a customized image.", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplateSource": { - "description": "Describes a virtual machine image source for building, customizing and distributing", - "oneOf": [ - { - "description": "Describes an image source that is a managed image in customer subscription. This image must reside in the same subscription and region as the Image Builder template.", - "properties": { - "imageId": { - "description": "ARM resource id of the managed image in customer subscription", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source from [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "properties": { - "offer": { - "description": "Image offer from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "planInfo": { - "description": "Optional configuration of purchase plan for platform image.", - "oneOf": [ - { - "$ref": "#/definitions/PlatformImagePurchasePlan" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "publisher": { - "description": "Image Publisher in [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "sku": { - "description": "Image sku from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "type": { - "enum": [ - "PlatformImage" - ], - "type": "string" - }, - "version": { - "description": "Image version from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages). If 'latest' is specified here, the version is evaluated when the image build takes place, not when the template is submitted.", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source that is an image version in an Azure Compute Gallery or a Direct Shared Gallery.", - "properties": { - "imageVersionId": { - "description": "ARM resource id of the image version. When image version name is 'latest', the version is evaluated when the image build takes place.", - "type": "string" - }, - "type": { - "enum": [ - "SharedImageVersion" - ], - "type": "string" - } - }, - "required": [ - "imageVersionId", - "type" - ], - "type": "object" - } - ], - "properties": {}, - "type": "object" - }, - "ImageTemplateVmProfile": { - "description": "Describes the virtual machines used to build and validate images", - "properties": { - "osDiskSizeGB": { - "description": "Size of the OS disk in GB. Omit or specify 0 to use Azure's default OS disk size.", - "oneOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "userAssignedIdentities": { - "description": "Optional array of resource IDs of user assigned managed identities to be configured on the build VM and validation VM. This may include the identity of the image template.", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "vmSize": { - "description": "Size of the virtual machine used to build, customize and capture images. Omit or specify empty string to use the default (Standard_D1_v2 for Gen1 images and Standard_D2ds_v4 for Gen2 images).", - "type": "string" - }, - "vnetConfig": { - "description": "Optional configuration of the virtual network to use to deploy the build VM and validation VM in. Omit if no specific virtual network needs to be used.", - "oneOf": [ - { - "$ref": "#/definitions/VirtualNetworkConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "PlatformImagePurchasePlan": { - "description": "Purchase plan configuration for platform image.", - "properties": { - "planName": { - "description": "Name of the purchase plan.", - "type": "string" - }, - "planProduct": { - "description": "Product of the purchase plan.", - "type": "string" - }, - "planPublisher": { - "description": "Publisher of the purchase plan.", - "type": "string" - } - }, - "required": [ - "planName", - "planProduct", - "planPublisher" - ], - "type": "object" - }, - "TargetRegion": { - "description": "Describes the target region information.", - "properties": { - "name": { - "description": "The name of the region.", - "type": "string" - }, - "replicaCount": { - "description": "The number of replicas of the Image Version to be created in this region. Omit to use the default (1).", - "oneOf": [ - { - "minimum": 1, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "storageAccountType": { - "description": "Specifies the storage account type to be used to store the image in this region. Omit to use the default (Standard_LRS).", - "oneOf": [ - { - "enum": [ - "Standard_LRS", - "Standard_ZRS", - "Premium_LRS" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "name" - ], - "type": "object" - }, - "TriggerProperties": { - "description": "Describes the properties of a trigger", - "oneOf": [ - { - "description": "Properties of SourceImage kind of trigger", - "properties": { - "kind": { - "enum": [ - "SourceImage" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - } - ], - "properties": {}, - "type": "object" - }, - "UserAssignedIdentity": { - "description": "User assigned identity properties", - "properties": {}, - "type": "object" - }, - "VirtualNetworkConfig": { - "description": "Virtual Network configuration.", - "properties": { - "proxyVmSize": { - "description": "Size of the proxy virtual machine used to pass traffic to the build VM and validation VM. Omit or specify empty string to use the default (Standard_A1_v2).", - "type": "string" - }, - "subnetId": { - "description": "Resource id of a pre-existing subnet.", - "type": "string" - } - }, - "type": "object" - }, - "imageTemplates_triggers_childResource": { - "description": "Microsoft.VirtualMachineImages/imageTemplates/triggers", - "properties": { - "apiVersion": { - "enum": [ - "2022-07-01" - ], - "type": "string" - }, - "name": { - "description": "The name of the trigger", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "description": "The properties of a trigger", - "oneOf": [ - { - "$ref": "#/definitions/TriggerProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "triggers" - ], - "type": "string" - } - }, - "required": [ - "name", - "properties", - "apiVersion", - "type" - ], - "type": "object" - } - } -} \ No newline at end of file diff --git a/schemas/2023-07-01/Microsoft.VirtualMachineImages.json b/schemas/2023-07-01/Microsoft.VirtualMachineImages.json deleted file mode 100644 index ce2f5a83ec..0000000000 --- a/schemas/2023-07-01/Microsoft.VirtualMachineImages.json +++ /dev/null @@ -1,1281 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.VirtualMachineImages.json#", - "title": "Microsoft.VirtualMachineImages", - "description": "Microsoft VirtualMachineImages Resource Types", - "$schema": "http://json-schema.org/draft-04/schema#", - "resourceDefinitions": { - "imageTemplates": { - "description": "Microsoft.VirtualMachineImages/imageTemplates", - "properties": { - "apiVersion": { - "enum": [ - "2023-07-01" - ], - "type": "string" - }, - "identity": { - "description": "The identity of the image template, if configured.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "location": { - "description": "The geo-location where the resource lives", - "type": "string" - }, - "name": { - "description": "The name of the image Template", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "description": "The properties of the image template", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "resources": { - "items": { - "oneOf": [ - { - "$ref": "#/definitions/imageTemplates_triggers_childResource" - } - ] - }, - "type": "array" - }, - "tags": { - "description": "Resource tags.", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "Microsoft.VirtualMachineImages/imageTemplates" - ], - "type": "string" - } - }, - "required": [ - "name", - "properties", - "apiVersion", - "type" - ], - "type": "object" - }, - "imageTemplates_triggers": { - "description": "Microsoft.VirtualMachineImages/imageTemplates/triggers", - "properties": { - "apiVersion": { - "enum": [ - "2023-07-01" - ], - "type": "string" - }, - "name": { - "description": "The name of the trigger", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "description": "The properties of a trigger", - "oneOf": [ - { - "$ref": "#/definitions/TriggerProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "Microsoft.VirtualMachineImages/imageTemplates/triggers" - ], - "type": "string" - } - }, - "required": [ - "name", - "properties", - "apiVersion", - "type" - ], - "type": "object" - } - }, - "definitions": { - "DistributeVersioner": { - "description": "Describes how to generate new x.y.z version number for distribution.", - "oneOf": [ - { - "description": "Generates version number that will be latest based on existing version numbers.", - "properties": { - "major": { - "description": "Major version for the generated version number. Determine what is \"latest\" based on versions with this value as the major version. -1 is equivalent to leaving it unset.", - "oneOf": [ - { - "minimum": -1, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scheme": { - "enum": [ - "Latest" - ], - "type": "string" - } - }, - "required": [ - "scheme" - ], - "type": "object" - }, - { - "description": "Generates version number based on version number of source image", - "properties": { - "scheme": { - "enum": [ - "Source" - ], - "type": "string" - } - }, - "required": [ - "scheme" - ], - "type": "object" - } - ], - "properties": {}, - "type": "object" - }, - "ImageTemplateCustomizer": { - "description": "Describes a unit of image customization", - "oneOf": [ - { - "description": "Uploads files to VMs (Linux, Windows). Corresponds to Packer file provisioner", - "properties": { - "destination": { - "description": "The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the file provided in the sourceUri field above", - "type": "string" - }, - "sourceUri": { - "description": "The URI of the file to be uploaded for customizing the VM. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "type": { - "enum": [ - "File" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs the specified PowerShell on the VM (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of PowerShell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runAsSystem": { - "description": "If specified, the PowerShell script will be run with elevated privileges using the Local System user. Can only be true when the runElevated field above is set to true.", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runElevated": { - "description": "If specified, the PowerShell script will be run with elevated privileges", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the PowerShell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the power shell script provided in the scriptUri field above", - "type": "string" - }, - "type": { - "enum": [ - "PowerShell" - ], - "type": "string" - }, - "validExitCodes": { - "description": "Valid exit codes for the PowerShell script. [Default: 0]", - "oneOf": [ - { - "items": { - "type": "integer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs a shell script during the customization phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of shell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the shell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the shell script provided in the scriptUri field", - "type": "string" - }, - "type": { - "enum": [ - "Shell" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Reboots a VM and waits for it to come back online (Windows). Corresponds to Packer windows-restart provisioner", - "properties": { - "restartCheckCommand": { - "description": "Command to check if restart succeeded [Default: '']", - "type": "string" - }, - "restartCommand": { - "description": "Command to execute the restart [Default: 'shutdown /r /f /t 0 /c \"packer restart\"']", - "type": "string" - }, - "restartTimeout": { - "description": "Restart timeout specified as a string of magnitude and unit, e.g. '5m' (5 minutes) or '2h' (2 hours) [Default: '5m']", - "type": "string" - }, - "type": { - "enum": [ - "WindowsRestart" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Installs Windows Updates. Corresponds to Packer Windows Update Provisioner (https://github.com/rgl/packer-provisioner-windows-update)", - "properties": { - "filters": { - "description": "Array of filters to select updates to apply. Omit or specify empty array to use the default (no filter). Refer to above link for examples and detailed description of this field.", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "searchCriteria": { - "description": "Criteria to search updates. Omit or specify empty string to use the default (search all). Refer to above link for examples and detailed description of this field.", - "type": "string" - }, - "type": { - "enum": [ - "WindowsUpdate" - ], - "type": "string" - }, - "updateLimit": { - "description": "Maximum number of updates to apply at a time. Omit or specify 0 to use the default (1000)", - "oneOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "name": { - "description": "Friendly Name to provide context on what this customization step does", - "type": "string" - } - }, - "type": "object" - }, - "ImageTemplateDistributor": { - "description": "Generic distribution object", - "oneOf": [ - { - "description": "Distribute as a Managed Disk Image.", - "properties": { - "imageId": { - "description": "Resource Id of the Managed Disk Image", - "type": "string" - }, - "location": { - "description": "Azure location for the image, should match if image already exists", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "location", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via Azure Compute Gallery.", - "properties": { - "excludeFromLatest": { - "description": "Flag that indicates whether created image version should be excluded from latest. Omit to use the default (false).", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "galleryImageId": { - "description": "Resource Id of the Azure Compute Gallery image", - "type": "string" - }, - "replicationRegions": { - "description": "[Deprecated] A list of regions that the image will be replicated to. This list can be specified only if targetRegions is not specified. This field is deprecated - use targetRegions instead.", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "storageAccountType": { - "description": "[Deprecated] Storage account type to be used to store the shared image. Omit to use the default (Standard_LRS). This field can be specified only if replicationRegions is specified. This field is deprecated - use targetRegions instead.", - "oneOf": [ - { - "enum": [ - "Standard_LRS", - "Standard_ZRS", - "Premium_LRS" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "targetRegions": { - "description": "The target regions where the distributed Image Version is going to be replicated to. This object supersedes replicationRegions and can be specified only if replicationRegions is not specified.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/TargetRegion" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "SharedImage" - ], - "type": "string" - }, - "versioning": { - "description": "Describes how to generate new x.y.z version number for distribution.", - "oneOf": [ - { - "$ref": "#/definitions/DistributeVersioner" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "galleryImageId", - "type" - ], - "type": "object" - }, - { - "description": "Distribute via VHD in a storage account.", - "properties": { - "type": { - "enum": [ - "VHD" - ], - "type": "string" - }, - "uri": { - "description": "Optional Azure Storage URI for the distributed VHD blob. Omit to use the default (empty string) in which case VHD would be published to the storage account in the staging resource group.", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "artifactTags": { - "description": "Tags that will be applied to the artifact once it has been created/updated by the distributor.", - "oneOf": [ - { - "additionalProperties": { - "type": "string" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runOutputName": { - "description": "The name to be used for the associated RunOutput.", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "runOutputName" - ], - "type": "object" - }, - "ImageTemplateIdentity": { - "description": "Identity for the image template.", - "properties": { - "type": { - "description": "The type of identity used for the image template. The type 'None' will remove any identities from the image template.", - "oneOf": [ - { - "enum": [ - "UserAssigned", - "None" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "userAssignedIdentities": { - "description": "The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.", - "oneOf": [ - { - "additionalProperties": { - "$ref": "#/definitions/UserAssignedIdentity" - }, - "properties": {}, - "type": "object" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplateInVMValidator": { - "description": "Describes a unit of in-VM validation of image", - "oneOf": [ - { - "description": "Uploads files required for validation to VMs (Linux, Windows). Corresponds to Packer file provisioner", - "properties": { - "destination": { - "description": "The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the file provided in the sourceUri field above", - "type": "string" - }, - "sourceUri": { - "description": "The URI of the file to be uploaded to the VM for validation. It can be a github link, Azure Storage URI (authorized or SAS), etc", - "type": "string" - }, - "type": { - "enum": [ - "File" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs the specified PowerShell script during the validation phase (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of PowerShell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runAsSystem": { - "description": "If specified, the PowerShell script will be run with elevated privileges using the Local System user. Can only be true when the runElevated field above is set to true.", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "runElevated": { - "description": "If specified, the PowerShell script will be run with elevated privileges", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the PowerShell script to be run for validation. It can be a github link, Azure Storage URI, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the power shell script provided in the scriptUri field above", - "type": "string" - }, - "type": { - "enum": [ - "PowerShell" - ], - "type": "string" - }, - "validExitCodes": { - "description": "Valid exit codes for the PowerShell script. [Default: 0]", - "oneOf": [ - { - "items": { - "type": "integer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Runs the specified shell script during the validation phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", - "properties": { - "inline": { - "description": "Array of shell commands to execute", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "scriptUri": { - "description": "URI of the shell script to be run for validation. It can be a github link, Azure Storage URI, etc", - "type": "string" - }, - "sha256Checksum": { - "description": "SHA256 checksum of the shell script provided in the scriptUri field", - "type": "string" - }, - "type": { - "enum": [ - "Shell" - ], - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - } - ], - "properties": { - "name": { - "description": "Friendly Name to provide context on what this validation step does", - "type": "string" - } - }, - "type": "object" - }, - "ImageTemplateProperties": { - "description": "Describes the properties of an image template", - "properties": { - "buildTimeoutInMinutes": { - "description": "Maximum duration to wait while building the image template (includes all customizations, optimization, validations, and distributions). Omit or specify 0 to use the default (4 hours).", - "oneOf": [ - { - "maximum": 960, - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "customize": { - "description": "Specifies the properties used to describe the customization steps of the image, like Image source etc", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateCustomizer" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "distribute": { - "description": "The distribution targets where the image output needs to go to.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateDistributor" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "errorHandling": { - "description": "Error handling options upon a build failure", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplatePropertiesErrorHandling" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "optimize": { - "description": "Specifies optimization to be performed on image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplatePropertiesOptimize" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "source": { - "description": "Specifies the properties used to describe the source image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateSource" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "stagingResourceGroup": { - "description": "The staging resource group id in the same subscription as the image template that will be used to build the image. If this field is empty, a resource group with a random name will be created. If the resource group specified in this field doesn't exist, it will be created with the same name. If the resource group specified exists, it must be empty and in the same region as the image template. The resource group created will be deleted during template deletion if this field is empty or the resource group specified doesn't exist, but if the resource group specified exists the resources created in the resource group will be deleted during template deletion and the resource group itself will remain.", - "type": "string" - }, - "validate": { - "description": "Configuration options and list of validations to be performed on the resulting image.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplatePropertiesValidate" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "vmProfile": { - "description": "Describes how virtual machine is set up to build images", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplateVmProfile" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "source", - "distribute" - ], - "type": "object" - }, - "ImageTemplatePropertiesErrorHandling": { - "description": "Error handling options upon a build failure", - "properties": { - "onCustomizerError": { - "description": "If there is a customizer error and this field is set to 'cleanup', the build VM and associated network resources will be cleaned up. This is the default behavior. If there is a customizer error and this field is set to 'abort', the build VM will be preserved.", - "oneOf": [ - { - "enum": [ - "cleanup", - "abort" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "onValidationError": { - "description": "If there is a validation error and this field is set to 'cleanup', the build VM and associated network resources will be cleaned up. This is the default behavior. If there is a validation error and this field is set to 'abort', the build VM will be preserved.", - "oneOf": [ - { - "enum": [ - "cleanup", - "abort" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplatePropertiesOptimize": { - "description": "Specifies optimization to be performed on image.", - "properties": { - "vmBoot": { - "description": "Optimization is applied on the image for a faster VM boot.", - "oneOf": [ - { - "$ref": "#/definitions/ImageTemplatePropertiesOptimizeVmBoot" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplatePropertiesOptimizeVmBoot": { - "description": "Optimization is applied on the image for a faster VM boot.", - "properties": { - "state": { - "description": "Enabling this field will improve VM boot time by optimizing the final customized image output.", - "oneOf": [ - { - "enum": [ - "Enabled", - "Disabled" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplatePropertiesValidate": { - "description": "Configuration options and list of validations to be performed on the resulting image.", - "properties": { - "continueDistributeOnFailure": { - "description": "If validation fails and this field is set to false, output image(s) will not be distributed. This is the default behavior. If validation fails and this field is set to true, output image(s) will still be distributed. Please use this option with caution as it may result in bad images being distributed for use. In either case (true or false), the end to end image run will be reported as having failed in case of a validation failure. [Note: This field has no effect if validation succeeds.]", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "inVMValidations": { - "description": "List of validations to be performed.", - "oneOf": [ - { - "items": { - "$ref": "#/definitions/ImageTemplateInVMValidator" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "sourceValidationOnly": { - "description": "If this field is set to true, the image specified in the 'source' section will directly be validated. No separate build will be run to generate and then validate a customized image.", - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "ImageTemplateSource": { - "description": "Describes a virtual machine image source for building, customizing and distributing", - "oneOf": [ - { - "description": "Describes an image source that is a managed image in customer subscription. This image must reside in the same subscription and region as the Image Builder template.", - "properties": { - "imageId": { - "description": "ARM resource id of the managed image in customer subscription", - "type": "string" - }, - "type": { - "enum": [ - "ManagedImage" - ], - "type": "string" - } - }, - "required": [ - "imageId", - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source from [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "properties": { - "offer": { - "description": "Image offer from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "planInfo": { - "description": "Optional configuration of purchase plan for platform image.", - "oneOf": [ - { - "$ref": "#/definitions/PlatformImagePurchasePlan" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "publisher": { - "description": "Image Publisher in [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "sku": { - "description": "Image sku from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", - "type": "string" - }, - "type": { - "enum": [ - "PlatformImage" - ], - "type": "string" - }, - "version": { - "description": "Image version from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages). If 'latest' is specified here, the version is evaluated when the image build takes place, not when the template is submitted.", - "type": "string" - } - }, - "required": [ - "type" - ], - "type": "object" - }, - { - "description": "Describes an image source that is an image version in an Azure Compute Gallery or a Direct Shared Gallery.", - "properties": { - "imageVersionId": { - "description": "ARM resource id of the image version. When image version name is 'latest', the version is evaluated when the image build takes place.", - "type": "string" - }, - "type": { - "enum": [ - "SharedImageVersion" - ], - "type": "string" - } - }, - "required": [ - "imageVersionId", - "type" - ], - "type": "object" - } - ], - "properties": {}, - "type": "object" - }, - "ImageTemplateVmProfile": { - "description": "Describes the virtual machines used to build and validate images", - "properties": { - "osDiskSizeGB": { - "description": "Size of the OS disk in GB. Omit or specify 0 to use Azure's default OS disk size.", - "oneOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "userAssignedIdentities": { - "description": "Optional array of resource IDs of user assigned managed identities to be configured on the build VM and validation VM. This may include the identity of the image template.", - "oneOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "vmSize": { - "description": "Size of the virtual machine used to build, customize and capture images. Omit or specify empty string to use the default (Standard_D1_v2 for Gen1 images and Standard_D2ds_v4 for Gen2 images).", - "type": "string" - }, - "vnetConfig": { - "description": "Optional configuration of the virtual network to use to deploy the build VM and validation VM in. Omit if no specific virtual network needs to be used.", - "oneOf": [ - { - "$ref": "#/definitions/VirtualNetworkConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "type": "object" - }, - "PlatformImagePurchasePlan": { - "description": "Purchase plan configuration for platform image.", - "properties": { - "planName": { - "description": "Name of the purchase plan.", - "type": "string" - }, - "planProduct": { - "description": "Product of the purchase plan.", - "type": "string" - }, - "planPublisher": { - "description": "Publisher of the purchase plan.", - "type": "string" - } - }, - "required": [ - "planName", - "planProduct", - "planPublisher" - ], - "type": "object" - }, - "TargetRegion": { - "description": "Describes the target region information.", - "properties": { - "name": { - "description": "The name of the region.", - "type": "string" - }, - "replicaCount": { - "description": "The number of replicas of the Image Version to be created in this region. Omit to use the default (1).", - "oneOf": [ - { - "minimum": 1, - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "storageAccountType": { - "description": "Specifies the storage account type to be used to store the image in this region. Omit to use the default (Standard_LRS).", - "oneOf": [ - { - "enum": [ - "Standard_LRS", - "Standard_ZRS", - "Premium_LRS" - ], - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - } - }, - "required": [ - "name" - ], - "type": "object" - }, - "TriggerProperties": { - "description": "Describes the properties of a trigger", - "oneOf": [ - { - "description": "Properties of SourceImage kind of trigger", - "properties": { - "kind": { - "enum": [ - "SourceImage" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - } - ], - "properties": {}, - "type": "object" - }, - "UserAssignedIdentity": { - "description": "User assigned identity properties", - "properties": {}, - "type": "object" - }, - "VirtualNetworkConfig": { - "description": "Virtual Network configuration.", - "properties": { - "proxyVmSize": { - "description": "Size of the proxy virtual machine used to pass traffic to the build VM and validation VM. Omit or specify empty string to use the default (Standard_A1_v2).", - "type": "string" - }, - "subnetId": { - "description": "Resource id of a pre-existing subnet.", - "type": "string" - } - }, - "type": "object" - }, - "imageTemplates_triggers_childResource": { - "description": "Microsoft.VirtualMachineImages/imageTemplates/triggers", - "properties": { - "apiVersion": { - "enum": [ - "2023-07-01" - ], - "type": "string" - }, - "name": { - "description": "The name of the trigger", - "oneOf": [ - { - "pattern": "^[A-Za-z0-9-_.]{1,64}$", - "type": "string" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "description": "The properties of a trigger", - "oneOf": [ - { - "$ref": "#/definitions/TriggerProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "type": { - "enum": [ - "triggers" - ], - "type": "string" - } - }, - "required": [ - "name", - "properties", - "apiVersion", - "type" - ], - "type": "object" - } - } -} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index ab4d6df4d4..00e483c1e1 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -43303,36 +43303,6 @@ { "$ref": "https://schema.management.azure.com/schemas/2024-04-01-preview/Microsoft.VideoIndexer.json#/resourceDefinitions/accounts" }, - { - "$ref": "https://schema.management.azure.com/schemas/2018-02-01-preview/Microsoft.VirtualMachineImages.json#/resourceDefinitions/imageTemplates" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-02-01-preview/Microsoft.VirtualMachineImages.json#/resourceDefinitions/imageTemplates" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-05-01-preview/Microsoft.VirtualMachineImages.json#/resourceDefinitions/imageTemplates" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-02-14/Microsoft.VirtualMachineImages.json#/resourceDefinitions/imageTemplates" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.VirtualMachineImages.json#/resourceDefinitions/imageTemplates" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2022-02-14/Microsoft.VirtualMachineImages.json#/resourceDefinitions/imageTemplates" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2022-07-01/Microsoft.VirtualMachineImages.json#/resourceDefinitions/imageTemplates" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2022-07-01/Microsoft.VirtualMachineImages.json#/resourceDefinitions/imageTemplates_triggers" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.VirtualMachineImages.json#/resourceDefinitions/imageTemplates" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.VirtualMachineImages.json#/resourceDefinitions/imageTemplates_triggers" - }, { "$ref": "https://schema.management.azure.com/schemas/2014-04-01-preview/Microsoft.VisualStudio.json#/resourceDefinitions/account" },