From 4c4176964c030fcc97396da0d8e84526bcf1d921 Mon Sep 17 00:00:00 2001 From: Theodore Chang Date: Thu, 24 Feb 2022 16:49:38 -0600 Subject: [PATCH 01/25] new version folder --- .../stable/2022-03-02/DiskRP/disk.json | 844 ++++++++++++++++++ .../stable/2022-03-02/DiskRP/diskAccess.json | 824 +++++++++++++++++ .../2022-03-02/DiskRP/diskEncryptionSet.json | 587 ++++++++++++ .../2022-03-02/DiskRP/diskRPCommon.json | 523 +++++++++++ .../2022-03-02/DiskRP/diskRestorePoint.json | 426 +++++++++ ...cessPrivateEndpointConnection_Approve.json | 54 ++ ...ccessPrivateEndpointConnection_Delete.json | 14 + ...skAccessPrivateEndpointConnection_Get.json | 29 + ...teEndpointConnection_ListByDiskAccess.json | 32 + .../DiskAccessPrivateLinkResources_Get.json | 30 + .../diskAccessExamples/DiskAccess_Create.json | 32 + .../diskAccessExamples/DiskAccess_Delete.json | 13 + .../diskAccessExamples/DiskAccess_Get.json | 26 + .../DiskAccess_Get_WithPrivateEndpoints.json | 44 + .../DiskAccess_ListByResourceGroup.json | 62 ++ .../DiskAccess_ListBySubscription.json | 61 ++ .../diskAccessExamples/DiskAccess_Update.json | 43 + .../DiskEncryptionSet_Create.json | 63 ++ ...ithKeyVaultFromADifferentSubscription.json | 54 ++ .../DiskEncryptionSet_Delete.json | 13 + .../DiskEncryptionSet_Get.json | 36 + ...ptionSet_Get_WithAutoKeyRotationError.json | 41 + ...EncryptionSet_ListAssociatedResources.json | 19 + ...DiskEncryptionSet_ListByResourceGroup.json | 64 ++ .../DiskEncryptionSet_ListBySubscription.json | 63 ++ .../DiskEncryptionSet_Update.json | 75 ++ ...WithRotationToLatestKeyVersionEnabled.json | 63 ++ ...onToLatestKeyVersionEnabledInProgress.json | 68 ++ .../diskExamples/Disk_BeginGetAccess.json | 20 + .../Disk_BeginGetAccess_WithVMGuestState.json | 22 + .../Disk_CreateOrUpdate_BurstingEnabled.json | 46 + .../Disk_Create_ByCopyingASnapshot.json | 45 + ...portingBlobFromADifferentSubscription.json | 48 + ...yImportingBlobFromTheSameSubscription.json | 45 + ...entialVMSupportedDiskEncryptedWithCMK.json | 66 ++ .../diskExamples/Disk_Create_Empty.json | 45 + .../Disk_Create_FromAPlatformImage.json | 72 ++ ...Disk_Create_FromAnExistingManagedDisk.json | 45 + .../Disk_Create_FromImportSecure.json | 63 ++ .../Disk_Create_FromUploadPreparedSecure.json | 57 ++ .../Disk_Create_InExtendedLocation.json | 57 ++ .../diskExamples/Disk_Create_UploadDisk.json | 45 + .../Disk_Create_WithDiskAccess.json | 50 ++ .../Disk_Create_WithDiskEncryptionSet.json | 51 ++ .../Disk_Create_WithLogicalSectorSize.json | 59 ++ .../Disk_Create_WithSSDZRSAccountType.json | 56 ++ .../Disk_Create_WithSecurityProfile.json | 63 ++ .../examples/diskExamples/Disk_Delete.json | 13 + .../diskExamples/Disk_EndGetAccess.json | 12 + .../examples/diskExamples/Disk_Get.json | 73 ++ .../Disk_ListByResourceGroup.json | 120 +++ .../diskExamples/Disk_ListBySubscription.json | 119 +++ .../Disk_Update_AddAcceleratedNetworking.json | 70 ++ .../Disk_Update_AddPurchasePlan.json | 79 ++ .../Disk_Update_AddSupportsHibernation.json | 60 ++ .../diskExamples/Disk_Update_ChangeTier.json | 47 + .../Disk_Update_DisableBursting.json | 42 + .../Disk_Update_RemoveDiskAccess.json | 46 + .../DiskRestorePoint_BeginGetAccess.json | 22 + .../DiskRestorePoint_EndGetAccess.json | 14 + .../DiskRestorePoint_Get.json | 28 + ...enSourceResourceIsFromDifferentRegion.json | 31 + ...DiskRestorePoint_ListByVmRestorePoint.json | 31 + .../Snapshot_BeginGetAccess.json | 20 + ...managedBlobFromADifferentSubscription.json | 48 + ...nUnmanagedBlobFromTheSameSubscription.json | 45 + ...napshot_Create_FromAnExistingSnapshot.json | 45 + ...omAnExistingSnapshotInDifferentRegion.json | 45 + .../snapshotExamples/Snapshot_Delete.json | 13 + .../Snapshot_EndGetAccess.json | 12 + .../snapshotExamples/Snapshot_Get.json | 65 ++ .../Snapshot_ListByResourceGroup.json | 57 ++ .../Snapshot_ListBySubscription.json | 99 ++ .../snapshotExamples/Snapshot_Update.json | 58 ++ ...napshot_Update_WithAcceleratedNetwork.json | 67 ++ .../stable/2022-03-02/DiskRP/snapshot.json | 655 ++++++++++++++ .../stable/2022-03-02/common.json | 204 +++++ .../compute/resource-manager/readme.go.md | 2 +- .../compute/resource-manager/readme.md | 24 +- 79 files changed, 7422 insertions(+), 2 deletions(-) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Create.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListBySubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Update.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_Empty.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAPlatformImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromImportSecure.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_InExtendedLocation.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_UploadDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSecurityProfile.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_EndGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListByResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListBySubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddPurchasePlan.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddSupportsHibernation.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ChangeTier.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_DisableBursting.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_RemoveDiskAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_BeginGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_EndGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListByResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListBySubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json new file mode 100644 index 000000000000..23fff161c261 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json @@ -0,0 +1,844 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}": { + "put": { + "tags": [ + "Disks" + ], + "operationId": "Disks_CreateOrUpdate", + "description": "Creates or updates a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "disk", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Disk" + }, + "description": "Disk object supplied in the body of the Put disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-examples": { + "Create an empty managed disk.": { + "$ref": "./examples/diskExamples/Disk_Create_Empty.json" + }, + "Create a managed disk from a platform image.": { + "$ref": "./examples/diskExamples/Disk_Create_FromAPlatformImage.json" + }, + "Create a managed disk from an existing managed disk in the same or different subscription.": { + "$ref": "./examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json" + }, + "Create a managed disk by importing an unmanaged blob from the same subscription.": { + "$ref": "./examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json" + }, + "Create a managed disk by importing an unmanaged blob from a different subscription.": { + "$ref": "./examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json" + }, + "Create a managed disk by copying a snapshot.": { + "$ref": "./examples/diskExamples/Disk_Create_ByCopyingASnapshot.json" + }, + "Create a managed upload disk.": { + "$ref": "./examples/diskExamples/Disk_Create_UploadDisk.json" + }, + "Create a managed disk and associate with disk access resource.": { + "$ref": "./examples/diskExamples/Disk_Create_WithDiskAccess.json" + }, + "Create a managed disk and associate with disk encryption set.": { + "$ref": "./examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json" + }, + "Create an ultra managed disk with logicalSectorSize 512E": { + "$ref": "./examples/diskExamples/Disk_Create_WithLogicalSectorSize.json" + }, + "Create an empty managed disk in extended location.": { + "$ref": "./examples/diskExamples/Disk_Create_InExtendedLocation.json" + }, + "Create a managed disk with ssd zrs account type.": { + "$ref": "./examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json" + }, + "Create a managed disk with security profile": { + "$ref": "./examples/diskExamples/Disk_Create_WithSecurityProfile.json" + }, + "Create a managed disk from ImportSecure create option": { + "$ref": "./examples/diskExamples/Disk_Create_FromImportSecure.json" + }, + "Create a managed disk from UploadPreparedSecure create option": { + "$ref": "./examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json" + }, + "Create a confidential VM supported disk encrypted with customer managed key": { + "$ref": "./examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Update", + "description": "Updates (patches) a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "disk", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskUpdate" + }, + "description": "Disk object supplied in the body of the Patch disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update managed disk to remove disk access resource association.": { + "$ref": "./examples/diskExamples/Disk_Update_RemoveDiskAccess.json" + }, + "Update a managed disk to add purchase plan.": { + "$ref": "./examples/diskExamples/Disk_Update_AddPurchasePlan.json" + }, + "Update a managed disk to disable bursting.": { + "$ref": "./examples/diskExamples/Disk_Update_DisableBursting.json" + }, + "Create or update a bursting enabled managed disk.": { + "$ref": "./examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json" + }, + "Update a managed disk to add supportsHibernation.": { + "$ref": "./examples/diskExamples/Disk_Update_AddSupportsHibernation.json" + }, + "Update a managed disk to add accelerated networking.": { + "$ref": "./examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json" + }, + "Update a managed disk to change tier.": { + "$ref": "./examples/diskExamples/Disk_Update_ChangeTier.json" + } + } + }, + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Get", + "description": "Gets information about a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-examples": { + "Get information about a managed disk.": { + "$ref": "./examples/diskExamples/Disk_Get.json" + } + } + }, + "delete": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Delete", + "description": "Deletes a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk is deleted, this is an expected error code." + } + }, + "x-ms-examples": { + "Delete a managed disk.": { + "$ref": "./examples/diskExamples/Disk_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks": { + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_ListByResourceGroup", + "description": "Lists all the disks under a resource group.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskList" + } + } + }, + "x-ms-examples": { + "List all managed disks in a resource group.": { + "$ref": "./examples/diskExamples/Disk_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks": { + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_List", + "description": "Lists all the disks under a subscription.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskList" + } + } + }, + "x-ms-examples": { + "List all managed disks in a subscription.": { + "$ref": "./examples/diskExamples/Disk_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/beginGetAccess": { + "post": { + "tags": [ + "Disks" + ], + "operationId": "Disks_GrantAccess", + "description": "Grants access to a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "./diskRPCommon.json#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./diskRPCommon.json#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Get a sas on a managed disk.": { + "$ref": "./examples/diskExamples/Disk_BeginGetAccess.json" + }, + "Get sas on managed disk and VM guest state": { + "$ref": "./examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/endGetAccess": { + "post": { + "tags": [ + "Disks" + ], + "operationId": "Disks_RevokeAccess", + "description": "Revokes access to a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Revoke access to a managed disk.": { + "$ref": "./examples/diskExamples/Disk_EndGetAccess.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "Disk": { + "properties": { + "managedBy": { + "readOnly": true, + "type": "string", + "description": "A relative URI containing the ID of the VM that has the disk attached." + }, + "managedByExtended": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of relative URIs containing the IDs of the VMs that have the disk attached. maxShares should be set to a value greater than one for disks to allow attaching them to multiple VMs." + }, + "sku": { + "$ref": "#/definitions/DiskSku" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Logical zone list for Disk." + }, + "extendedLocation": { + "$ref": "../common.json#/definitions/ExtendedLocation", + "description": "The extended location where the disk will be created. Extended location cannot be changed." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskProperties" + } + }, + "allOf": [ + { + "$ref": "../common.json#/definitions/Resource" + } + ], + "description": "Disk resource." + }, + "DiskUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "sku": { + "$ref": "#/definitions/DiskSku" + } + }, + "description": "Disk update resource." + }, + "DiskList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Disk" + }, + "description": "A list of disks." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disks. Call ListNext() with this to fetch the next page of disks." + } + }, + "required": [ + "value" + ], + "description": "The List Disks operation response." + }, + "DiskSku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS", + "UltraSSD_LRS", + "Premium_ZRS", + "StandardSSD_ZRS" + ], + "x-ms-enum": { + "name": "DiskStorageAccountTypes", + "modelAsString": true, + "values": [ + { + "value": "Standard_LRS", + "description": "Standard HDD locally redundant storage. Best for backup, non-critical, and infrequent access." + }, + { + "value": "Premium_LRS", + "description": "Premium SSD locally redundant storage. Best for production and performance sensitive workloads." + }, + { + "value": "StandardSSD_LRS", + "description": "Standard SSD locally redundant storage. Best for web servers, lightly used enterprise applications and dev/test." + }, + { + "value": "UltraSSD_LRS", + "description": "Ultra SSD locally redundant storage. Best for IO-intensive workloads such as SAP HANA, top tier databases (for example, SQL, Oracle), and other transaction-heavy workloads." + }, + { + "value": "Premium_ZRS", + "description": "Premium SSD zone redundant storage. Best for the production workloads that need storage resiliency against zone failures." + }, + { + "value": "StandardSSD_ZRS", + "description": "Standard SSD zone redundant storage. Best for web servers, lightly used enterprise applications and dev/test that need storage resiliency against zone failures." + } + ] + }, + "description": "The sku name." + }, + "tier": { + "type": "string", + "readOnly": true, + "description": "The sku tier." + } + }, + "description": "The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS, or StandardSSD_ZRS." + }, + "DiskProperties": { + "properties": { + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the disk was created." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "purchasePlan": { + "$ref": "./diskRPCommon.json#/definitions/PurchasePlan", + "description": "Purchase plan information for the the image from which the OS disk was created. E.g. - {name: 2019-Datacenter, publisher: MicrosoftWindowsServer, product: WindowsServer}" + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities for the image from which the OS disk was created." + }, + "creationData": { + "$ref": "./diskRPCommon.json#/definitions/CreationData", + "description": "Disk source information. CreationData information cannot be changed after the disk has been created." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "diskSizeBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The size of the disk in bytes. This field is read only." + }, + "uniqueId": { + "type": "string", + "readOnly": true, + "description": "Unique Guid identifying the resource." + }, + "encryptionSettingsCollection": { + "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used for Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk provisioning state." + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int64", + "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskIOPSReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskState": { + "$ref": "./diskRPCommon.json#/definitions/DiskState", + "description": "The state of the disk." + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "maxShares": { + "type": "integer", + "format": "int32", + "description": "The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time." + }, + "shareInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ShareInfoElement" + }, + "x-ms-identifiers": [ + "vmUri" + ], + "description": "Details of the list of all VMs that have the disk attached. maxShares should be set to a value greater than one for disks to allow attaching them to multiple VMs." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "tier": { + "type": "string", + "description": "Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/. Does not apply to Ultra disks." + }, + "burstingEnabled": { + "type": "boolean", + "description": "Set to true to enable bursting beyond the provisioned performance target of the disk. Bursting is disabled by default. Does not apply to Ultra disks." + }, + "propertyUpdatesInProgress": { + "readOnly": true, + "$ref": "#/definitions/PropertyUpdatesInProgress", + "description": "Properties of the disk for which update is pending." + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a disk supports hibernation." + }, + "securityProfile": { + "$ref": "./diskRPCommon.json#/definitions/DiskSecurityProfile", + "description": "Contains the security related information for the resource." + }, + "completionPercent": { + "type": "number", + "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation." + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + } + }, + "required": [ + "creationData" + ], + "description": "Disk resource properties." + }, + "DiskUpdateProperties": { + "properties": { + "osType": { + "type": "string", + "description": "the Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "encryptionSettingsCollection": { + "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int64", + "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskIOPSReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "maxShares": { + "type": "integer", + "format": "int32", + "description": "The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time." + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "tier": { + "type": "string", + "description": "Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/. Does not apply to Ultra disks." + }, + "burstingEnabled": { + "type": "boolean", + "description": "Set to true to enable bursting beyond the provisioned performance target of the disk. Bursting is disabled by default. Does not apply to Ultra disks." + }, + "purchasePlan": { + "$ref": "./diskRPCommon.json#/definitions/PurchasePlan", + "description": "Purchase plan information to be added on the OS disk" + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities (like accelerated networking) to be added on the OS disk." + }, + "propertyUpdatesInProgress": { + "readOnly": true, + "$ref": "#/definitions/PropertyUpdatesInProgress", + "description": "Properties of the disk for which update is pending." + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a disk supports hibernation." + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + } + }, + "description": "Disk resource update properties." + }, + "ShareInfoElement": { + "properties": { + "vmUri": { + "readOnly": true, + "type": "string", + "description": "A relative URI containing the ID of the VM that has the disk attached." + } + } + }, + "PropertyUpdatesInProgress": { + "properties": { + "targetTier": { + "type": "string", + "description": "The target performance tier of the disk if a tier change operation is in progress." + } + }, + "description": "Properties of the disk for which update is pending." + } + }, + "parameters": { + "DiskNameParameter": { + "name": "diskName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed disk that is being created. The name can't be changed after the disk is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json new file mode 100644 index 000000000000..cc52d1a0b2de --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json @@ -0,0 +1,824 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}": { + "put": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_CreateOrUpdate", + "description": "Creates or updates a disk access resource", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "diskAccess", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskAccess" + }, + "description": "disk access object supplied in the body of the Put disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Create.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_Update", + "description": "Updates (patches) a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "diskAccess", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskAccessUpdate" + }, + "description": "disk access object supplied in the body of the Patch disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Update.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_Get", + "description": "Gets information about a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Get.json" + }, + "Get information about a disk access resource with private endpoints.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json" + } + } + }, + "delete": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_Delete", + "description": "Deletes a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk access resource is already deleted, this is an expected error code." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses": { + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_ListByResourceGroup", + "description": "Lists all the disk access resources under a resource group.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccessList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk access resources in a resource group.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskAccesses": { + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_List", + "description": "Lists all the disk access resources under a subscription.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccessList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk access resources in a subscription.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}/privateLinkResources": { + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_GetPrivateLinkResources", + "description": "Gets the private link resources possible under disk access resource", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + }, + "x-ms-examples": { + "List all possible private link resources under disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "put": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_UpdateAPrivateEndpointConnection", + "description": "Approve or reject a private endpoint connection under disk access resource, this can't be used to create a new private endpoint connection.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "private endpoint connection object supplied in the body of the Put private endpoint connection operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Approve a Private Endpoint Connection under a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_GetAPrivateEndpointConnection", + "description": "Gets information about a private endpoint connection under a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a private endpoint connection under a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json" + } + } + }, + "delete": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_DeleteAPrivateEndpointConnection", + "description": "Deletes a private endpoint connection under a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the private endpoint connection is already deleted, this is an expected error code." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a private endpoint connection under a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}/privateEndpointConnections": { + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_ListPrivateEndpointConnections", + "description": "List information about private endpoint connections under a disk access resource", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a private endpoint connection under a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DiskAccessProperties": { + "properties": { + "privateEndpointConnections": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "A readonly collection of private endpoint connections created on the disk. Currently only one endpoint connection is supported." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk access resource provisioning state." + }, + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the disk access was created." + } + } + }, + "DiskAccess": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskAccessProperties" + }, + "extendedLocation": { + "$ref": "../common.json#/definitions/ExtendedLocation", + "description": "The extended location where the disk access will be created. Extended location cannot be changed." + } + }, + "allOf": [ + { + "$ref": "../common.json#/definitions/Resource" + } + ], + "description": "disk access resource." + }, + "DiskAccessList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskAccess" + }, + "description": "A list of disk access resources." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disk access resources. Call ListNext() with this to fetch the next page of disk access resources." + } + }, + "required": [ + "value" + ], + "description": "The List disk access operation response." + }, + "DiskAccessUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "Used for updating a disk access resource." + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "id": { + "readOnly": true, + "type": "string", + "description": "private link resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "private link resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "private link resource type" + } + }, + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point.", + "readOnly": true + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between DiskAccess and Virtual Network." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "private endpoint connection Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "private endpoint connection name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "private endpoint connection type" + } + }, + "description": "The Private Endpoint Connection resource.", + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of snapshots. Call ListNext() with this to fetch the next page of snapshots." + } + }, + "description": "A list of private link resources" + } + }, + "parameters": { + "DiskAccessNameParameter": { + "name": "diskAccessName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the disk access resource that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json new file mode 100644 index 000000000000..47d2ce525bec --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json @@ -0,0 +1,587 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}": { + "put": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_CreateOrUpdate", + "description": "Creates or updates a disk encryption set", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "diskEncryptionSet", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + }, + "description": "disk encryption set object supplied in the body of the Put disk encryption set operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json" + }, + "Create a disk encryption set with key vault from a different subscription.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Update", + "description": "Updates (patches) a disk encryption set.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "diskEncryptionSet", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskEncryptionSetUpdate" + }, + "description": "disk encryption set object supplied in the body of the Patch disk encryption set operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update a disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json" + }, + "Update a disk encryption set with rotationToLatestKeyVersionEnabled set to true - Succeeded": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json" + }, + "Update a disk encryption set with rotationToLatestKeyVersionEnabled set to true - Updating": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Get", + "description": "Gets information about a disk encryption set.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json" + }, + "Get information about a disk encryption set when auto-key rotation failed.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json" + } + } + }, + "delete": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Delete", + "description": "Deletes a disk encryption set.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk encryption set is already deleted, this is an expected error code." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_ListByResourceGroup", + "description": "Lists all the disk encryption sets under a resource group.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSetList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk encryption sets in a resource group.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_List", + "description": "Lists all the disk encryption sets under a subscription.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSetList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk encryption sets in a subscription.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}/associatedResources": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_ListAssociatedResources", + "description": "Lists all resources that are encrypted with this disk encryption set.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceUriList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all resources that are encrypted with this disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "EncryptionSetProperties": { + "properties": { + "encryptionType": { + "$ref": "#/definitions/DiskEncryptionSetType" + }, + "activeKey": { + "$ref": "#/definitions/KeyForDiskEncryptionSet", + "description": "The key vault key which is currently used by this disk encryption set." + }, + "previousKeys": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/KeyForDiskEncryptionSet" + }, + "x-ms-identifiers": [ + "sourceVault/id" + ], + "description": "A readonly collection of key vault keys previously used by this disk encryption set while a key rotation is in progress. It will be empty if there is no ongoing key rotation." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk encryption set provisioning state." + }, + "rotationToLatestKeyVersionEnabled": { + "type": "boolean", + "description": "Set this flag to true to enable auto-updating of this disk encryption set to the latest key version." + }, + "lastKeyRotationTimestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the active key of this disk encryption set was updated." + }, + "autoKeyRotationError": { + "readOnly": true, + "$ref": "../common.json#/definitions/ApiError", + "description": "The error that was encountered during auto-key rotation. If an error is present, then auto-key rotation will not be attempted until the error on this disk encryption set is fixed." + } + } + }, + "EncryptionSetIdentity": { + "properties": { + "type": { + "type": "string", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "DiskEncryptionSetIdentityType", + "modelAsString": true + }, + "description": "The type of Managed Identity used by the DiskEncryptionSet. Only SystemAssigned is supported for new creations. Disk Encryption Sets can be updated with Identity type None during migration of subscription to a new Azure Active Directory tenant; it will cause the encrypted resources to lose access to the keys." + }, + "principalId": { + "readOnly": true, + "type": "string", + "description": "The object id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-identity-principal-id header in the PUT request if the resource has a systemAssigned(implicit) identity" + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-client-tenant-id header in the PUT request if the resource has a systemAssigned(implicit) identity" + } + }, + "description": "The managed identity for the disk encryption set. It should be given permission on the key vault before it can be used to encrypt disks." + }, + "DiskEncryptionSetType": { + "type": "string", + "description": "The type of key used to encrypt the data of the disk.", + "enum": [ + "EncryptionAtRestWithCustomerKey", + "EncryptionAtRestWithPlatformAndCustomerKeys", + "ConfidentialVmEncryptedWithCustomerKey" + ], + "x-ms-enum": { + "name": "DiskEncryptionSetType", + "modelAsString": true, + "values": [ + { + "value": "EncryptionAtRestWithCustomerKey", + "description": "Resource using diskEncryptionSet would be encrypted at rest with Customer managed key that can be changed and revoked by a customer." + }, + { + "value": "EncryptionAtRestWithPlatformAndCustomerKeys", + "description": "Resource using diskEncryptionSet would be encrypted at rest with two layers of encryption. One of the keys is Customer managed and the other key is Platform managed." + }, + { + "value": "ConfidentialVmEncryptedWithCustomerKey", + "description": "Confidential VM supported disk and VM guest state would be encrypted with customer managed key." + } + ] + } + }, + "KeyForDiskEncryptionSet": { + "properties": { + "sourceVault": { + "$ref": "./diskRPCommon.json#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret. This property is optional and cannot be used if the KeyVault subscription is not the same as the Disk Encryption Set subscription." + }, + "keyUrl": { + "type": "string", + "description": "Fully versioned Key Url pointing to a key in KeyVault. Version segment of the Url is required regardless of rotationToLatestKeyVersionEnabled value." + } + }, + "required": [ + "keyUrl" + ], + "description": "Key Vault Key Url to be used for server side encryption of Managed Disks and Snapshots" + }, + "DiskEncryptionSet": { + "properties": { + "identity": { + "$ref": "#/definitions/EncryptionSetIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EncryptionSetProperties" + } + }, + "allOf": [ + { + "$ref": "../common.json#/definitions/Resource" + } + ], + "description": "disk encryption set resource." + }, + "DiskEncryptionSetUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskEncryptionSetUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "identity": { + "$ref": "#/definitions/EncryptionSetIdentity" + } + }, + "description": "disk encryption set update resource." + }, + "DiskEncryptionSetUpdateProperties": { + "properties": { + "encryptionType": { + "$ref": "#/definitions/DiskEncryptionSetType" + }, + "activeKey": { + "$ref": "#/definitions/KeyForDiskEncryptionSet" + }, + "rotationToLatestKeyVersionEnabled": { + "type": "boolean", + "description": "Set this flag to true to enable auto-updating of this disk encryption set to the latest key version." + } + }, + "description": "disk encryption set resource update properties." + }, + "DiskEncryptionSetList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskEncryptionSet" + }, + "description": "A list of disk encryption sets." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disk encryption sets. Call ListNext() with this to fetch the next page of disk encryption sets." + } + }, + "required": [ + "value" + ], + "description": "The List disk encryption set operation response." + }, + "ResourceUriList": { + "properties": { + "value": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of IDs or Owner IDs of resources which are encrypted with the disk encryption set." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of encrypted resources. Call ListNext() with this to fetch the next page of encrypted resources." + } + }, + "required": [ + "value" + ], + "description": "The List resources which are encrypted with the disk encryption set." + } + }, + "parameters": { + "DiskEncryptionSetNameParameter": { + "name": "diskEncryptionSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the disk encryption set that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json new file mode 100644 index 000000000000..f71e4c3b1a6e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json @@ -0,0 +1,523 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": {}, + "definitions": { + "EncryptionSettingsCollection": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Set this flag to true and provide DiskEncryptionKey and optional KeyEncryptionKey to enable encryption. Set this flag to false and remove DiskEncryptionKey and KeyEncryptionKey to disable encryption. If EncryptionSettings is null in the request object, the existing settings remain unchanged." + }, + "encryptionSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EncryptionSettingsElement" + }, + "x-ms-identifiers": [ + "diskEncryptionKey/sourceVault/id" + ], + "description": "A collection of encryption settings, one for each disk volume." + }, + "encryptionSettingsVersion": { + "type": "string", + "description": "Describes what type of encryption is used for the disks. Once this field is set, it cannot be overwritten. '1.0' corresponds to Azure Disk Encryption with AAD app.'1.1' corresponds to Azure Disk Encryption." + } + }, + "required": [ + "enabled" + ], + "description": "Encryption settings for disk or snapshot" + }, + "EncryptionSettingsElement": { + "properties": { + "diskEncryptionKey": { + "$ref": "#/definitions/KeyVaultAndSecretReference", + "description": "Key Vault Secret Url and vault id of the disk encryption key" + }, + "keyEncryptionKey": { + "$ref": "#/definitions/KeyVaultAndKeyReference", + "description": "Key Vault Key Url and vault id of the key encryption key. KeyEncryptionKey is optional and when provided is used to unwrap the disk encryption key." + } + }, + "description": "Encryption settings for one disk volume." + }, + "KeyVaultAndSecretReference": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret" + }, + "secretUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + } + }, + "required": [ + "secretUrl", + "sourceVault" + ], + "description": "Key Vault Secret Url and vault id of the encryption key " + }, + "KeyVaultAndKeyReference": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret" + }, + "keyUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + } + }, + "required": [ + "keyUrl", + "sourceVault" + ], + "description": "Key Vault Key Url and vault id of KeK, KeK is optional and when provided is used to unwrap the encryptionKey" + }, + "SourceVault": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "description": "The vault id is an Azure Resource Manager Resource id in the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}" + }, + "EncryptionType": { + "type": "string", + "description": "The type of key used to encrypt the data of the disk.", + "enum": [ + "EncryptionAtRestWithPlatformKey", + "EncryptionAtRestWithCustomerKey", + "EncryptionAtRestWithPlatformAndCustomerKeys" + ], + "x-ms-enum": { + "name": "EncryptionType", + "modelAsString": true, + "values": [ + { + "value": "EncryptionAtRestWithPlatformKey", + "description": "Disk is encrypted at rest with Platform managed key. It is the default encryption type. This is not a valid encryption type for disk encryption sets." + }, + { + "value": "EncryptionAtRestWithCustomerKey", + "description": "Disk is encrypted at rest with Customer managed key that can be changed and revoked by a customer." + }, + { + "value": "EncryptionAtRestWithPlatformAndCustomerKeys", + "description": "Disk is encrypted at rest with 2 layers of encryption. One of the keys is Customer managed and the other key is Platform managed." + } + ] + } + }, + "Encryption": { + "properties": { + "diskEncryptionSetId": { + "type": "string", + "description": "ResourceId of the disk encryption set to use for enabling encryption at rest." + }, + "type": { + "$ref": "#/definitions/EncryptionType" + } + }, + "description": "Encryption at rest settings for disk or snapshot" + }, + "NetworkAccessPolicy": { + "type": "string", + "description": "Policy for accessing the disk via network.", + "enum": [ + "AllowAll", + "AllowPrivate", + "DenyAll" + ], + "x-ms-enum": { + "name": "NetworkAccessPolicy", + "modelAsString": true, + "values": [ + { + "value": "AllowAll", + "description": "The disk can be exported or uploaded to from any network." + }, + { + "value": "AllowPrivate", + "description": "The disk can be exported or uploaded to using a DiskAccess resource's private endpoints." + }, + { + "value": "DenyAll", + "description": "The disk cannot be exported." + } + ] + } + }, + "PublicNetworkAccess": { + "type": "string", + "description": "Policy for controlling export on the disk.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "You can generate a SAS URI to access the underlying data of the disk publicly on the internet when NetworkAccessPolicy is set to AllowAll. You can access the data via the SAS URI only from your trusted Azure VNET when NetworkAccessPolicy is set to AllowPrivate." + }, + { + "value": "Disabled", + "description": "You cannot access the underlying data of the disk publicly on the internet even when NetworkAccessPolicy is set to AllowAll. You can access the data via the SAS URI only from your trusted Azure VNET when NetworkAccessPolicy is set to AllowPrivate." + } + ] + } + }, + "DiskState": { + "type": "string", + "description": "This enumerates the possible state of the disk.", + "readOnly": true, + "enum": [ + "Unattached", + "Attached", + "Reserved", + "Frozen", + "ActiveSAS", + "ActiveSASFrozen", + "ReadyToUpload", + "ActiveUpload" + ], + "x-ms-enum": { + "name": "DiskState", + "modelAsString": true, + "values": [ + { + "value": "Unattached", + "description": "The disk is not being used and can be attached to a VM." + }, + { + "value": "Attached", + "description": "The disk is currently attached to a running VM." + }, + { + "value": "Reserved", + "description": "The disk is attached to a stopped-deallocated VM." + }, + { + "value": "Frozen", + "description": "The disk is attached to a VM which is in hibernated state." + }, + { + "value": "ActiveSAS", + "description": "The disk currently has an Active SAS Uri associated with it." + }, + { + "value": "ActiveSASFrozen", + "description": "The disk is attached to a VM in hibernated state and has an active SAS URI associated with it." + }, + { + "value": "ReadyToUpload", + "description": "A disk is ready to be created by upload by requesting a write token." + }, + { + "value": "ActiveUpload", + "description": "A disk is created for upload and a write token has been issued for uploading to it." + } + ] + } + }, + "CreationData": { + "properties": { + "createOption": { + "type": "string", + "enum": [ + "Empty", + "Attach", + "FromImage", + "Import", + "Copy", + "Restore", + "Upload", + "CopyStart", + "ImportSecure", + "UploadPreparedSecure" + ], + "x-ms-enum": { + "name": "DiskCreateOption", + "modelAsString": true, + "values": [ + { + "value": "Empty", + "description": "Create an empty data disk of a size given by diskSizeGB." + }, + { + "value": "Attach", + "description": "Disk will be attached to a VM." + }, + { + "value": "FromImage", + "description": "Create a new disk from a platform image specified by the given imageReference or galleryImageReference." + }, + { + "value": "Import", + "description": "Create a disk by importing from a blob specified by a sourceUri in a storage account specified by storageAccountId." + }, + { + "value": "Copy", + "description": "Create a new disk or snapshot by copying from a disk or snapshot specified by the given sourceResourceId." + }, + { + "value": "Restore", + "description": "Create a new disk by copying from a backup recovery point." + }, + { + "value": "Upload", + "description": "Create a new disk by obtaining a write token and using it to directly upload the contents of the disk." + }, + { + "value": "CopyStart", + "description": "Create a new disk by using a deep copy process, where the resource creation is considered complete only after all data has been copied from the source." + }, + { + "value": "ImportSecure", + "description": "Similar to Import create option. Create a new Trusted Launch VM or Confidential VM supported disk by importing additional blob for VM guest state specified by securityDataUri in storage account specified by storageAccountId" + }, + { + "value": "UploadPreparedSecure", + "description": "Similar to Upload create option. Create a new Trusted Launch VM or Confidential VM supported disk and upload using write token in both disk and VM guest state" + } + ] + }, + "description": "This enumerates the possible sources of a disk's creation." + }, + "storageAccountId": { + "type": "string", + "description": "Required if createOption is Import. The Azure Resource Manager identifier of the storage account containing the blob to import as a disk." + }, + "imageReference": { + "$ref": "#/definitions/ImageDiskReference", + "description": "Disk source information." + }, + "galleryImageReference": { + "$ref": "#/definitions/ImageDiskReference", + "description": "Required if creating from a Gallery Image. The id of the ImageDiskReference will be the ARM id of the shared galley image version from which to create a disk." + }, + "sourceUri": { + "type": "string", + "description": "If createOption is Import, this is the URI of a blob to be imported into a managed disk." + }, + "sourceResourceId": { + "type": "string", + "description": "If createOption is Copy, this is the ARM id of the source snapshot or disk." + }, + "sourceUniqueId": { + "readOnly": true, + "type": "string", + "description": "If this field is set, this is the unique id identifying the source of this resource." + }, + "uploadSizeBytes": { + "type": "integer", + "format": "int64", + "description": "If createOption is Upload, this is the size of the contents of the upload including the VHD footer. This value should be between 20972032 (20 MiB + 512 bytes for the VHD footer) and 35183298347520 bytes (32 TiB + 512 bytes for the VHD footer)." + }, + "logicalSectorSize": { + "type": "integer", + "format": "int32", + "description": "Logical sector size in bytes for Ultra disks. Supported values are 512 ad 4096. 4096 is the default." + }, + "securityDataUri": { + "type": "string", + "description": "If createOption is ImportSecure, this is the URI of a blob to be imported into VM guest state." + } + }, + "required": [ + "createOption" + ], + "description": "Data used when creating a disk." + }, + "ImageDiskReference": { + "properties": { + "id": { + "type": "string", + "description": "A relative uri containing either a Platform Image Repository or user image reference." + }, + "lun": { + "type": "integer", + "format": "int32", + "description": "If the disk is created from an image's data disk, this is an index that indicates which of the data disks in the image to use. For OS disks, this field is null." + } + }, + "required": [ + "id" + ], + "description": "The source image used for creating the disk." + }, + "PurchasePlan": { + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + }, + "promotionCode": { + "type": "string", + "description": "The Offer Promotion Code." + } + }, + "required": [ + "publisher", + "name", + "product" + ], + "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." + }, + "SupportedCapabilities": { + "type": "object", + "properties": { + "acceleratedNetwork": { + "type": "boolean", + "description": "True if the image from which the OS disk is created supports accelerated networking." + } + }, + "description": "List of supported capabilities (like accelerated networking) persisted on the disk resource for VM use." + }, + "DiskSecurityType": { + "type": "string", + "description": "Specifies the SecurityType of the VM. Applicable for OS disks only.", + "enum": [ + "TrustedLaunch", + "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey", + "ConfidentialVM_DiskEncryptedWithPlatformKey", + "ConfidentialVM_DiskEncryptedWithCustomerKey" + ], + "x-ms-enum": { + "name": "DiskSecurityTypes", + "modelAsString": true, + "values": [ + { + "value": "TrustedLaunch", + "description": "Trusted Launch provides security features such as secure boot and virtual Trusted Platform Module (vTPM)" + }, + { + "value": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey", + "description": "Indicates Confidential VM disk with only VM guest state encrypted" + }, + { + "value": "ConfidentialVM_DiskEncryptedWithPlatformKey", + "description": "Indicates Confidential VM disk with both OS disk and VM guest state encrypted with a platform managed key" + }, + { + "value": "ConfidentialVM_DiskEncryptedWithCustomerKey", + "description": "Indicates Confidential VM disk with both OS disk and VM guest state encrypted with a customer managed key" + } + ] + } + }, + "DiskSecurityProfile": { + "properties": { + "securityType": { + "$ref": "#/definitions/DiskSecurityType" + }, + "secureVMDiskEncryptionSetId": { + "type": "string", + "description": "ResourceId of the disk encryption set associated to Confidential VM supported disk encrypted with customer managed key" + } + }, + "description": "Contains the security related information for the resource." + }, + "GrantAccessData": { + "properties": { + "access": { + "type": "string", + "enum": [ + "None", + "Read", + "Write" + ], + "x-ms-enum": { + "name": "AccessLevel", + "modelAsString": true + } + }, + "durationInSeconds": { + "type": "integer", + "format": "int32", + "description": "Time duration in seconds until the SAS access expires." + }, + "getSecureVMGuestStateSAS": { + "type": "boolean", + "description": "Set this flag to true to get additional SAS for VM guest state" + } + }, + "required": [ + "access", + "durationInSeconds" + ], + "description": "Data used for requesting a SAS." + }, + "AccessUri": { + "properties": { + "accessSAS": { + "readOnly": true, + "type": "string", + "description": "A SAS uri for accessing a disk." + }, + "securityDataAccessSAS": { + "readOnly": true, + "type": "string", + "description": "A SAS uri for accessing a VM guest state." + } + }, + "description": "A disk access SAS uri." + } + }, + "parameters": { + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json new file mode 100644 index 000000000000..d2e4f5650cef --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json @@ -0,0 +1,426 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}": { + "get": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_Get", + "description": "Get disk restorePoint resource", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "#/parameters/DiskRestorePointNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskRestorePoint" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get an incremental disk restorePoint resource.": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_Get.json" + }, + "Get an incremental disk restorePoint when source resource is from a different region": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints": { + "get": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_ListByRestorePoint", + "description": "Lists diskRestorePoints under a vmRestorePoint.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskRestorePointList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get an incremental disk restorePoint resource.": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}/beginGetAccess": { + "post": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_GrantAccess", + "description": "Grants access to a diskRestorePoint.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "#/parameters/DiskRestorePointNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "./diskRPCommon.json#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./diskRPCommon.json#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Grants access to a diskRestorePoint.": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}/endGetAccess": { + "post": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_RevokeAccess", + "description": "Revokes access to a diskRestorePoint.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "#/parameters/DiskRestorePointNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Revokes access to a diskRestorePoint.": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json" + } + } + } + } + }, + "definitions": { + "DiskRestorePoint": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskRestorePointProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "description": "Properties of disk restore point" + }, + "DiskRestorePointList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskRestorePoint" + }, + "description": "A list of disk restore points." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disk restore points. Call ListNext() with this to fetch the next page of disk restore points." + } + }, + "required": [ + "value" + ], + "description": "The List Disk Restore Points operation response." + }, + "DiskRestorePointProperties": { + "properties": { + "timeCreated": { + "type": "string", + "format": "date-time", + "description": "The timestamp of restorePoint creation", + "readOnly": true + }, + "sourceResourceId": { + "type": "string", + "description": "arm id of source disk or source disk restore point.", + "readOnly": true + }, + "osType": { + "type": "string", + "readOnly": true, + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "purchasePlan": { + "$ref": "./diskRPCommon.json#/definitions/PurchasePlan", + "description": "Purchase plan information for the the image from which the OS disk was created." + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities (like accelerated networking) for the image from which the OS disk was created." + }, + "familyId": { + "type": "string", + "description": "id of the backing snapshot's MIS family", + "readOnly": true + }, + "sourceUniqueId": { + "type": "string", + "description": "unique incarnation id of the source disk", + "readOnly": true + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys.", + "readOnly": true + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a disk supports hibernation." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "completionPercent": { + "type": "number", + "description": "Percentage complete for the background copy of disk restore point when source resource is from a different region." + }, + "replicationState": { + "type": "string", + "description": "Replication state of disk restore point when source resource is from a different region.", + "readOnly": true + }, + "sourceResourceLocation": { + "type": "string", + "description": "Location of source disk or source disk restore point when source resource is from a different region.", + "readOnly": true + } + }, + "description": "Properties of an incremental disk restore point" + }, + "ProxyOnlyResource": { + "description": "The ProxyOnly Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + } + } + } + }, + "parameters": { + "DiskRestorePointNameParameter": { + "name": "diskRestorePointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the disk restore point created.", + "x-ms-parameter-location": "method" + }, + "RestorePointCollectionNameParameter": { + "name": "restorePointCollectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the restore point collection that the disk restore point belongs.", + "x-ms-parameter-location": "method" + }, + "VmRestorePointNameParameter": { + "name": "vmRestorePointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vm restore point that the disk disk restore point belongs.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json new file mode 100644 index 000000000000..c6cd51cd709d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess", + "privateEndpointConnectionName": "myPrivateEndpointConnection", + "privateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approving myPrivateEndpointConnection" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myPrivateEndpointConenction", + "type": "Microsoft.Compute/diskAccesses/privateEndpointConnections", + "properties": { + "provisioningState": "Updating", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Approving myPrivateEndpointConnection", + "status": "Approved" + } + } + } + }, + "200": { + "body": { + "name": "myPrivateEndpointConnectionName", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnectionName", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Approving myPrivateEndpointConnection", + "status": "Approved" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json new file mode 100644 index 000000000000..09b0aa6facff --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskAccessName": "myDiskAccess", + "privateEndpointConnectionName": "myPrivateEndpointConnection", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json new file mode 100644 index 000000000000..63e33cbe21fe --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess", + "privateEndpointConnectionName": "myPrivateEndpointConnection" + }, + "responses": { + "200": { + "body": { + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnection", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json new file mode 100644 index 000000000000..81c0a5c67951 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnection", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json new file mode 100644 index 000000000000..519ee54d4c55 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateLinkResources/disks", + "name": "disks", + "type": "Microsoft.Compute/diskAccesses/privateLinkResources", + "properties": { + "groupId": "disks", + "requiredMembers": [ + "diskAccess_1" + ], + "requiredZoneNames": [ + "privatelink.blob.core.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Create.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Create.json new file mode 100644 index 000000000000..79c51eb4554b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Create.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess", + "diskAccess": { + "location": "West US" + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskAccess", + "location": "West US", + "type": "Microsoft.Compute/diskAccesses" + } + }, + "200": { + "body": { + "name": "myDiskAccess", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "type": "Microsoft.Compute/diskAccesses", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Delete.json new file mode 100644 index 000000000000..baf843c305cc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskAccessName": "myDiskAccess", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get.json new file mode 100644 index 000000000000..e87777a78dc4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00" + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "name": "myDiskAccess" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json new file mode 100644 index 000000000000..202bbe997c88 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00", + "privateEndpointConnections": [ + { + "name": "myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + ] + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "name": "myDiskAccess" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json new file mode 100644 index 000000000000..f71dcf7a486c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00" + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "name": "myDiskAccess" + }, + { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00", + "privateEndpointConnections": [ + { + "name": "myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2/privateEndpoinConnections/myDiskAccess2.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint2" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + ] + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2", + "name": "myDiskAccess2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskAccesses?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListBySubscription.json new file mode 100644 index 000000000000..efcd8ec181ab --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListBySubscription.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00" + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "name": "myDiskAccess" + }, + { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00", + "privateEndpointConnections": [ + { + "name": "myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2/privateEndpoinConnections/myDiskAccess2.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint2" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + ] + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2", + "name": "myDiskAccess2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskAccesses?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Update.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Update.json new file mode 100644 index 000000000000..68a5d2a57af2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Update.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess", + "diskAccess": { + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess?api-version=2021-04-01" + }, + "body": { + "name": "myDiskAccess", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "type": "Microsoft.Compute/diskAccesses", + "location": "West US", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + } + } + }, + "200": { + "body": { + "name": "myDiskAccess", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "type": "Microsoft.Compute/diskAccesses", + "location": "West US", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json new file mode 100644 index 000000000000..cc9a6c32a7e2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey" + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json new file mode 100644 index 000000000000..8aca5067e553 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey" + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json new file mode 100644 index 000000000000..e2dc9e77807d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskEncryptionSetName": "myDiskEncryptionSet", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json new file mode 100644 index 000000000000..2ac8960a3232 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet" + }, + "responses": { + "200": { + "body": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json new file mode 100644 index 000000000000..65da960a5243 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet" + }, + "responses": { + "200": { + "body": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "rotationToLatestKeyVersionEnabled": true, + "provisioningState": "Succeeded", + "autoKeyRotationError": { + "code": "ManagedServiceIdentityNotFound", + "message": "Auto-key rotation was disabled as managed service identity associated with DiskEncryptionSet 'myDiskEncryptionSet' was not found. Please update the resource with correct identity to re-enable auto-key rotation." + } + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json new file mode 100644 index 000000000000..0fbad7e36705 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet" + }, + "responses": { + "200": { + "body": { + "value": [ + "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}/associatedResources?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json new file mode 100644 index 000000000000..058529291380 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + }, + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault2" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet2", + "name": "myDiskEncryptionSet2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json new file mode 100644 index 000000000000..c93080183767 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + }, + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/mySecondResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault2" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet2", + "name": "myDiskEncryptionSet2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json new file mode 100644 index 000000000000..3c93bf0fb87a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/keyName/keyVersion" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey" + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet?api-version=2021-04-01" + }, + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/keyName/keyVersion" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/keyName/keyVersion" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "lastKeyRotationTimestamp": "2021-04-01T04:41:35.079872+00:00" + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json new file mode 100644 index 000000000000..0d63e6c85469 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "rotationToLatestKeyVersionEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet?api-version=2021-04-01" + }, + "body": { + "name": "myDiskEncryptionSet", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/KeyVersion2" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "rotationToLatestKeyVersionEnabled": true, + "provisioningState": "Succeeded", + "lastKeyRotationTimestamp": "2021-04-01T04:41:35.079872+00:00" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json new file mode 100644 index 000000000000..f098e0677aa6 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "rotationToLatestKeyVersionEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet?api-version=2021-04-01" + }, + "body": { + "name": "myDiskEncryptionSet", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion2" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "rotationToLatestKeyVersionEnabled": true, + "previousKeys": [ + { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + } + ], + "provisioningState": "Updating", + "lastKeyRotationTimestamp": "2021-04-01T04:41:35.079872+00:00" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess.json new file mode 100644 index 000000000000..18fc4ec647ed --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskName": "myDisk", + "api-version": "2022-03-02", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300 + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json new file mode 100644 index 000000000000..f62dcb7217e8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskName": "myDisk", + "api-version": "2022-03-02", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300, + "getSecureVMGuestStateSAS": true + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r", + "securityDataAccessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/b9bf5824-6122-49e0-ba22-042f76ccd8a1_vmgs?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json new file mode 100644 index 000000000000..e2cdac0c6349 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "diskSizeGB": 1024, + "burstingEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 1024, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 1024, + "burstingEnabled": true, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json new file mode 100644 index 000000000000..9410d8658767 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json new file mode 100644 index 000000000000..c238abb14878 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json new file mode 100644 index 000000000000..d46d27ec8f3e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json new file mode 100644 index 000000000000..218c9fff18b5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_DiskEncryptedWithCustomerKey", + "secureVMDiskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_DiskEncryptedWithCustomerKey", + "secureVMDiskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_DiskEncryptedWithCustomerKey", + "secureVMDiskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_Empty.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_Empty.json new file mode 100644 index 000000000000..f7157ab4c739 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_Empty.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAPlatformImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAPlatformImage.json new file mode 100644 index 000000000000..8489ab63ab8c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAPlatformImage.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "{sku}", + "publisher": "{publisher}", + "product": "{offer}" + }, + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + }, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "{sku}", + "publisher": "{publisher}", + "product": "{offer}" + }, + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json new file mode 100644 index 000000000000..0e0204eaa996 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk2", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk2" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk2" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromImportSecure.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromImportSecure.json new file mode 100644 index 000000000000..9f9406656782 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromImportSecure.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey" + }, + "creationData": { + "createOption": "ImportSecure", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "securityDataUri": "https://mystorageaccount.blob.core.windows.net/osimages/vmgs.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey" + }, + "creationData": { + "createOption": "ImportSecure", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "securityDataUri": "https://mystorageaccount.blob.core.windows.net/osimages/vmgs.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey" + }, + "creationData": { + "createOption": "ImportSecure", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "securityDataUri": "https://mystorageaccount.blob.core.windows.net/osimages/vmgs.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json new file mode 100644 index 000000000000..42c11a139813 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "UploadPreparedSecure", + "uploadSizeBytes": 10737418752 + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "UploadPreparedSecure", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "UploadPreparedSecure", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_InExtendedLocation.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_InExtendedLocation.json new file mode 100644 index 000000000000..7809e6bea569 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_InExtendedLocation.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "extendedLocation": { + "type": "EdgeZone", + "name": "{edge-zone-id}" + }, + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "extendedLocation": { + "type": "EdgeZone", + "name": "{edge-zone-id}" + } + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "extendedLocation": { + "type": "EdgeZone", + "name": "{edge-zone-id}" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_UploadDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_UploadDisk.json new file mode 100644 index 000000000000..d1343973551d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_UploadDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskAccess.json new file mode 100644 index 000000000000..6505d0fa0096 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskAccess.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "networkAccessPolicy": "AllowPrivate", + "diskAccessId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/{existing-diskAccess-name}" + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Succeeded", + "networkAccessPolicy": "AllowPrivate", + "diskAccessId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/{existing-diskAccess-name}", + "publicNetworkAccess": "Enabled" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json new file mode 100644 index 000000000000..9468632fbe1a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "encryption": { + "diskEncryptionSetId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Succeeded", + "encryption": { + "diskEncryptionSetId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json new file mode 100644 index 000000000000..3a070a17d271 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "sku": { + "name": "UltraSSD_LRS" + }, + "properties": { + "creationData": { + "createOption": "Empty", + "logicalSectorSize": 512 + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty", + "logicalSectorSize": 512 + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "sku": { + "name": "UltraSSD_LRS", + "tier": "Ultra" + } + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty", + "logicalSectorSize": 512 + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "sku": { + "name": "UltraSSD_LRS", + "tier": "Ultra" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json new file mode 100644 index 000000000000..bc8104da54ab --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "sku": { + "name": "Premium_ZRS" + }, + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "sku": { + "name": "Premium_ZRS", + "tier": "Premium" + } + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "sku": { + "name": "Premium_ZRS", + "tier": "Premium" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSecurityProfile.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSecurityProfile.json new file mode 100644 index 000000000000..c4fc34abd215 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSecurityProfile.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "North Central US", + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "North Central US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "North Central US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Delete.json new file mode 100644 index 000000000000..87c48164eb28 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskName": "myDisk", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_EndGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_EndGetAccess.json new file mode 100644 index 000000000000..a9f420172620 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_EndGetAccess.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskName": "myDisk", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Get.json new file mode 100644 index 000000000000..65bbd77e5ec4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Get.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myManagedDisk" + }, + "responses": { + "200": { + "body": { + "managedBy": "/subscriptions/123caaa-123v-v211-a49f-f88ccac5bf88/resourceGroups/ResourceGroupName/providers/Microsoft.Compute/virtualMachines/TestVM414689371c88843d65ec", + "sku": { + "name": "Standard_LRS" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "test_sku", + "publisher": "test_test_pmc2pc1", + "product": "marketplace_vm_test" + }, + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "supportsHibernation": true, + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 10, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.079872+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListByResourceGroup.json new file mode 100644 index 000000000000..57642890747a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListByResourceGroup.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.872242+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk2" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.3973934+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk3" + } + ], + "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListBySubscription.json new file mode 100644 index 000000000000..e2af47dfe0eb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListBySubscription.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1", + "name": "myManagedDisk1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.872242+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2", + "name": "myManagedDisk2" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.3973934+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk3", + "name": "myManagedDisk3" + } + ], + "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json new file mode 100644 index 000000000000..808f8b01c305 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "supportedCapabilities": { + "acceleratedNetwork": false + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": false + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": false + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddPurchasePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddPurchasePlan.json new file mode 100644 index 000000000000..7983218bdf94 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddPurchasePlan.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "purchasePlan": { + "name": "myPurchasePlanName", + "publisher": "myPurchasePlanPublisher", + "product": "myPurchasePlanProduct", + "promotionCode": "myPurchasePlanPromotionCode" + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "myPurchasePlanName", + "publisher": "myPurchasePlanPublisher", + "product": "myPurchasePlanProduct", + "promotionCode": "myPurchasePlanPromotionCode" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "myPurchasePlanName", + "publisher": "myPurchasePlanPublisher", + "product": "myPurchasePlanProduct", + "promotionCode": "myPurchasePlanPromotionCode" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddSupportsHibernation.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddSupportsHibernation.json new file mode 100644 index 000000000000..4ba654f27b1b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddSupportsHibernation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "supportsHibernation": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportsHibernation": true, + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "diskSizeGB": 127, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportsHibernation": true, + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "diskSizeGB": 127, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ChangeTier.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ChangeTier.json new file mode 100644 index 000000000000..8d78913903cd --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ChangeTier.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "tier": "P30" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "provisioningState": "Updating", + "tier": "P10", + "propertyUpdatesInProgress": { + "targetTier": "P30" + } + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "provisioningState": "Succeeded", + "tier": "P30" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_DisableBursting.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_DisableBursting.json new file mode 100644 index 000000000000..5dbc32fb629a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_DisableBursting.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "burstingEnabled": false + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_RemoveDiskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_RemoveDiskAccess.json new file mode 100644 index 000000000000..f5ecfdeeaa57 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_RemoveDiskAccess.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "networkAccessPolicy": "AllowAll" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating", + "networkAccessPolicy": "AllowAll" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Succeeded", + "networkAccessPolicy": "AllowAll" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json new file mode 100644 index 000000000000..f011b1c59b97 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2022-03-02", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300 + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json new file mode 100644 index 000000000000..50e399fef753 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get.json new file mode 100644 index 000000000000..8da4a20b39de --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpc/restorePoints/vmrp/diskRestorePoints/TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "name": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "properties": { + "timeCreated": "2020-09-16T04:41:35.079872+00:00", + "sourceResourceId": "/subscriptions/d2260d06-e00d-422f-8b63-93df551a59ae/resourceGroups/rg0680fb0c-89f1-41b4-96c0-35733a181558/providers/Microsoft.Compute/disks/TestDisk45ceb03433006d1baee0", + "osType": "Windows", + "hyperVGeneration": "V1", + "familyId": "996bf3ce-b6ff-4e86-9db6-dc27ea06cea5", + "sourceUniqueId": "48e058b1-7eea-4968-b532-10a8a1130c13", + "networkAccessPolicy": "AllowAll", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json new file mode 100644 index 000000000000..88ac8607f2ca --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpc/restorePoints/vmrp/diskRestorePoints/TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "name": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "properties": { + "timeCreated": "2020-09-16T04:41:35.079872+00:00", + "sourceResourceId": "/subscriptions/d2260d06-e00d-422f-8b63-93df551a59ae/resourceGroups/rg0680fb0c-89f1-41b4-96c0-35733a181558/providers/Microsoft.Compute/disks/TestDisk45ceb03433006d1baee0", + "osType": "Windows", + "hyperVGeneration": "V1", + "familyId": "996bf3ce-b6ff-4e86-9db6-dc27ea06cea5", + "sourceUniqueId": "48e058b1-7eea-4968-b532-10a8a1130c13", + "networkAccessPolicy": "AllowAll", + "publicNetworkAccess": "Disabled", + "replicationState": "Succeeded", + "completionPercent": 100, + "sourceResourceLocation": "eastus2" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json new file mode 100644 index 000000000000..7495117e35fc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpc/restorePoints/vmrp/diskRestorePoints/TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "name": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "properties": { + "timeCreated": "2020-09-16T04:41:35.079872+00:00", + "sourceResourceId": "/subscriptions/d2260d06-e00d-422f-8b63-93df551a59ae/resourceGroups/rg0680fb0c-89f1-41b4-96c0-35733a181558/providers/Microsoft.Compute/disks/TestDisk45ceb03433006d1baee0", + "osType": "Windows", + "hyperVGeneration": "V1", + "familyId": "996bf3ce-b6ff-4e86-9db6-dc27ea06cea5", + "sourceUniqueId": "48e058b1-7eea-4968-b532-10a8a1130c13", + "networkAccessPolicy": "AllowAll", + "publicNetworkAccess": "Disabled" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_BeginGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_BeginGetAccess.json new file mode 100644 index 000000000000..e1fb2b64eeea --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_BeginGetAccess.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300 + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json new file mode 100644 index 000000000000..1dd45c7fe1bb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot1", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json new file mode 100644 index 000000000000..ef0040bdc00d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot1", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json new file mode 100644 index 000000000000..b358fee171e8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot2", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "200": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json new file mode 100644 index 000000000000..0fe0c649d353 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot2", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "CopyStart", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "CopyStart", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "200": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "CopyStart", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Delete.json new file mode 100644 index 000000000000..a45ca19b39db --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_EndGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_EndGetAccess.json new file mode 100644 index 000000000000..76e37d04d44e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_EndGetAccess.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Get.json new file mode 100644 index 000000000000..263ae5d5db88 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Get.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot" + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "test_sku", + "publisher": "test_test_pmc2pc1", + "product": "marketplace_vm_test" + }, + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "supportsHibernation": true, + "creationData": { + "createOption": "Copy", + "sourceResourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk", + "sourceUniqueId": "d633885d-d102-4481-901e-5b2413d1a7be" + }, + "diskSizeGB": 100, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.079872+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot", + "name": "mySnapshot" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListByResourceGroup.json new file mode 100644 index 000000000000..96cf8ffdf369 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListByResourceGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot", + "name": "mySnapshot" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListBySubscription.json new file mode 100644 index 000000000000..cbc2c8425cae --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListBySubscription.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:47:30.6630569+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1", + "name": "mySnapshot1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:47:30.3247198+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2", + "name": "mySnapshot2" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update.json new file mode 100644 index 000000000000..dc06103d0b39 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02", + "snapshot": { + "properties": { + "diskSizeGB": 20 + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "diskSizeGB": 20, + "provisioningState": "Updating" + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + }, + "location": "West US", + "name": "mySnapshot" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "diskSizeGB": 20, + "provisioningState": "Succeeded" + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + }, + "location": "West US", + "name": "mySnapshot" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json new file mode 100644 index 000000000000..b3e110dd2224 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02", + "snapshot": { + "properties": { + "diskSizeGB": 20, + "supportedCapabilities": { + "acceleratedNetwork": false + } + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "supportedCapabilities": { + "acceleratedNetwork": false + }, + "diskSizeGB": 20, + "provisioningState": "Updating" + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + }, + "location": "West US", + "name": "mySnapshot" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "supportedCapabilities": { + "acceleratedNetwork": false + }, + "diskSizeGB": 20, + "provisioningState": "Succeeded" + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + }, + "location": "West US", + "name": "mySnapshot" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json new file mode 100644 index 000000000000..38f307380436 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json @@ -0,0 +1,655 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}": { + "put": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_CreateOrUpdate", + "description": "Creates or updates a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "snapshot", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Snapshot" + }, + "description": "Snapshot object supplied in the body of the Put disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Create a snapshot from an existing snapshot in the same or a different subscription.": { + "$ref": "./examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json" + }, + "Create a snapshot by importing an unmanaged blob from the same subscription.": { + "$ref": "./examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json" + }, + "Create a snapshot by importing an unmanaged blob from a different subscription.": { + "$ref": "./examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json" + }, + "Create a snapshot from an existing snapshot in the same or a different subscription in a different region.": { + "$ref": "./examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Update", + "description": "Updates (patches) a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "snapshot", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotUpdate" + }, + "description": "Snapshot object supplied in the body of the Patch snapshot operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Update a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_Update.json" + }, + "Update a snapshot with accelerated networking.": { + "$ref": "./examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Get", + "description": "Gets information about a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Get information about a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_Get.json" + } + } + }, + "delete": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Delete", + "description": "Deletes a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the snapshot is deleted, this is an expected error code." + } + }, + "x-ms-examples": { + "Delete a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_ListByResourceGroup", + "description": "Lists snapshots under a resource group.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotList" + } + } + }, + "x-ms-examples": { + "List all snapshots in a resource group.": { + "$ref": "./examples/snapshotExamples/Snapshot_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_List", + "description": "Lists snapshots under a subscription.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotList" + } + } + }, + "x-ms-examples": { + "List all snapshots in a subscription.": { + "$ref": "./examples/snapshotExamples/Snapshot_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/beginGetAccess": { + "post": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_GrantAccess", + "description": "Grants access to a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "./diskRPCommon.json#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get snapshot access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./diskRPCommon.json#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Get a sas on a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_BeginGetAccess.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/endGetAccess": { + "post": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_RevokeAccess", + "description": "Revokes access to a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Revoke access to a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_EndGetAccess.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "Snapshot": { + "properties": { + "managedBy": { + "readOnly": true, + "type": "string", + "description": "Unused. Always Null." + }, + "sku": { + "$ref": "#/definitions/SnapshotSku" + }, + "extendedLocation": { + "$ref": "../common.json#/definitions/ExtendedLocation", + "description": "The extended location where the snapshot will be created. Extended location cannot be changed." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnapshotProperties" + } + }, + "allOf": [ + { + "$ref": "../common.json#/definitions/Resource" + } + ], + "description": "Snapshot resource." + }, + "SnapshotUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnapshotUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "sku": { + "$ref": "#/definitions/SnapshotSku" + } + }, + "description": "Snapshot update resource." + }, + "SnapshotList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Snapshot" + }, + "description": "A list of snapshots." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of snapshots. Call ListNext() with this to fetch the next page of snapshots." + } + }, + "required": [ + "value" + ], + "description": "The List Snapshots operation response." + }, + "SnapshotSku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "Standard_ZRS" + ], + "x-ms-enum": { + "name": "SnapshotStorageAccountTypes", + "modelAsString": true, + "values": [ + { + "value": "Standard_LRS", + "description": "Standard HDD locally redundant storage" + }, + { + "value": "Premium_LRS", + "description": "Premium SSD locally redundant storage" + }, + { + "value": "Standard_ZRS", + "description": "Standard zone redundant storage" + } + ] + }, + "description": "The sku name." + }, + "tier": { + "type": "string", + "readOnly": true, + "description": "The sku tier." + } + }, + "description": "The snapshots sku name. Can be Standard_LRS, Premium_LRS, or Standard_ZRS. This is an optional parameter for incremental snapshot and the default behavior is the SKU will be set to the same sku as the previous snapshot" + }, + "SnapshotProperties": { + "properties": { + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the snapshot was created." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "purchasePlan": { + "$ref": "./diskRPCommon.json#/definitions/PurchasePlan", + "description": "Purchase plan information for the image from which the source disk for the snapshot was originally created." + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities (like Accelerated Networking) for the image from which the source disk from the snapshot was originally created." + }, + "creationData": { + "$ref": "./diskRPCommon.json#/definitions/CreationData", + "description": "Disk source information. CreationData information cannot be changed after the disk has been created." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "diskSizeBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The size of the disk in bytes. This field is read only." + }, + "diskState": { + "$ref": "./diskRPCommon.json#/definitions/DiskState", + "description": "The state of the snapshot." + }, + "uniqueId": { + "type": "string", + "readOnly": true, + "description": "Unique Guid identifying the resource." + }, + "encryptionSettingsCollection": { + "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk provisioning state." + }, + "incremental": { + "type": "boolean", + "description": "Whether a snapshot is incremental. Incremental snapshots on the same disk occupy less space than full snapshots and can be diffed." + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "securityProfile": { + "$ref": "./diskRPCommon.json#/definitions/DiskSecurityProfile", + "description": "Contains the security related information for the resource." + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a snapshot supports hibernation." + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "completionPercent": { + "type": "number", + "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation." + } + }, + "required": [ + "creationData" + ], + "description": "Snapshot resource properties." + }, + "SnapshotUpdateProperties": { + "properties": { + "osType": { + "type": "string", + "description": "the Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "encryptionSettingsCollection": { + "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a snapshot supports hibernation." + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities (like accelerated networking) for the image from which the OS disk was created." + } + }, + "description": "Snapshot resource update properties." + } + }, + "parameters": { + "SnapshotNameParameter": { + "name": "snapshotName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the snapshot that is being created. The name can't be changed after the snapshot is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The max name length is 80 characters.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json new file mode 100644 index 000000000000..ca21e99fadf9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json @@ -0,0 +1,204 @@ +{ + "swagger": "2.0", + "info": { + "title": "ComputeManagementClient", + "description": "The Compute Management Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": {}, + "definitions": { + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error base." + }, + "InnerError": { + "properties": { + "exceptiontype": { + "type": "string", + "description": "The exception type." + }, + "errordetail": { + "type": "string", + "description": "The internal error message or exception dump." + } + }, + "description": "Inner error details." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "x-ms-identifiers": [ + "message", + "target" + ], + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "Resource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "SubResourceReadOnly": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "ExtendedLocationType": { + "type": "string", + "description": "The type of extendedLocation.", + "enum": [ + "EdgeZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationTypes", + "modelAsString": true + } + }, + "ExtendedLocation": { + "description": "The complex type of the extended location.", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type of the extended location." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/readme.go.md b/specification/compute/resource-manager/readme.go.md index 7998a4c4d26a..773c5f6d4960 100644 --- a/specification/compute/resource-manager/readme.go.md +++ b/specification/compute/resource-manager/readme.go.md @@ -38,7 +38,7 @@ azure-arm: true directive: # we do not need to hack to add a dummy enum entry in track 2, because track 2 generator will generate the enum type even if it only has on entry - - from: disk.json + - from: DiskRP/diskRPCommon.json where: "$.definitions.PurchasePlan" transform: > $["x-ms-client-name"] = "DiskPurchasePlan"; diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index 95d1ec4d24e5..c681ae9ff05a 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -34,7 +34,7 @@ These are the global settings for the Compute API. title: ComputeManagementClient description: Compute Client openapi-type: arm -tag: package-2021-11-01 +tag: package-2022-03-02 directive: - where: @@ -235,6 +235,28 @@ directive: - RequiredPropertiesMissingInResourceModel ``` +### Tag: package-2022-03-02 + +These settings apply only when `--tag=package-2022-03-02` is specified on the command line. + +``` yaml $(tag) == 'package-2022-03-02' +input-file: +- Microsoft.Compute/stable/2022-03-02/common.json +- Microsoft.Compute/stable/2021-11-01/compute.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json +- Microsoft.Compute/stable/2021-11-01/runCommands.json +- Microsoft.Compute/stable/2021-07-01/skus.json +- Microsoft.Compute/stable/2021-10-01/gallery.json +- Microsoft.Compute/stable/2021-07-01/sharedGallery.json +- Microsoft.Compute/stable/2021-07-01/communityGallery.json +- Microsoft.Compute/stable/2021-03-01/cloudService.json +``` + ### Tag: package-2021-11-01 These settings apply only when `--tag=package-2021-11-01` is specified on the command line. From f9be1961acf9f7b0441dcff24f33c6cbc4ed189c Mon Sep 17 00:00:00 2001 From: Theodore Chang Date: Thu, 24 Feb 2022 16:49:38 -0600 Subject: [PATCH 02/25] new version folder --- .../stable/2022-03-02/DiskRP/disk.json | 844 ++++++++++++++++++ .../stable/2022-03-02/DiskRP/diskAccess.json | 824 +++++++++++++++++ .../2022-03-02/DiskRP/diskEncryptionSet.json | 587 ++++++++++++ .../2022-03-02/DiskRP/diskRPCommon.json | 523 +++++++++++ .../2022-03-02/DiskRP/diskRestorePoint.json | 426 +++++++++ ...cessPrivateEndpointConnection_Approve.json | 54 ++ ...ccessPrivateEndpointConnection_Delete.json | 14 + ...skAccessPrivateEndpointConnection_Get.json | 29 + ...teEndpointConnection_ListByDiskAccess.json | 32 + .../DiskAccessPrivateLinkResources_Get.json | 30 + .../diskAccessExamples/DiskAccess_Create.json | 32 + .../diskAccessExamples/DiskAccess_Delete.json | 13 + .../diskAccessExamples/DiskAccess_Get.json | 26 + .../DiskAccess_Get_WithPrivateEndpoints.json | 44 + .../DiskAccess_ListByResourceGroup.json | 62 ++ .../DiskAccess_ListBySubscription.json | 61 ++ .../diskAccessExamples/DiskAccess_Update.json | 43 + .../DiskEncryptionSet_Create.json | 63 ++ ...ithKeyVaultFromADifferentSubscription.json | 54 ++ .../DiskEncryptionSet_Delete.json | 13 + .../DiskEncryptionSet_Get.json | 36 + ...ptionSet_Get_WithAutoKeyRotationError.json | 41 + ...EncryptionSet_ListAssociatedResources.json | 19 + ...DiskEncryptionSet_ListByResourceGroup.json | 64 ++ .../DiskEncryptionSet_ListBySubscription.json | 63 ++ .../DiskEncryptionSet_Update.json | 75 ++ ...WithRotationToLatestKeyVersionEnabled.json | 63 ++ ...onToLatestKeyVersionEnabledInProgress.json | 68 ++ .../diskExamples/Disk_BeginGetAccess.json | 20 + .../Disk_BeginGetAccess_WithVMGuestState.json | 22 + .../Disk_CreateOrUpdate_BurstingEnabled.json | 46 + .../Disk_Create_ByCopyingASnapshot.json | 45 + ...portingBlobFromADifferentSubscription.json | 48 + ...yImportingBlobFromTheSameSubscription.json | 45 + ...entialVMSupportedDiskEncryptedWithCMK.json | 66 ++ .../diskExamples/Disk_Create_Empty.json | 45 + .../Disk_Create_FromAPlatformImage.json | 72 ++ ...Disk_Create_FromAnExistingManagedDisk.json | 45 + .../Disk_Create_FromImportSecure.json | 63 ++ .../Disk_Create_FromUploadPreparedSecure.json | 57 ++ .../Disk_Create_InExtendedLocation.json | 57 ++ .../diskExamples/Disk_Create_UploadDisk.json | 45 + .../Disk_Create_WithDiskAccess.json | 50 ++ .../Disk_Create_WithDiskEncryptionSet.json | 51 ++ .../Disk_Create_WithLogicalSectorSize.json | 59 ++ .../Disk_Create_WithSSDZRSAccountType.json | 56 ++ .../Disk_Create_WithSecurityProfile.json | 63 ++ .../examples/diskExamples/Disk_Delete.json | 13 + .../diskExamples/Disk_EndGetAccess.json | 12 + .../examples/diskExamples/Disk_Get.json | 73 ++ .../Disk_ListByResourceGroup.json | 120 +++ .../diskExamples/Disk_ListBySubscription.json | 119 +++ .../Disk_Update_AddAcceleratedNetworking.json | 70 ++ .../Disk_Update_AddPurchasePlan.json | 79 ++ .../Disk_Update_AddSupportsHibernation.json | 60 ++ .../diskExamples/Disk_Update_ChangeTier.json | 47 + .../Disk_Update_DisableBursting.json | 42 + .../Disk_Update_RemoveDiskAccess.json | 46 + .../DiskRestorePoint_BeginGetAccess.json | 22 + .../DiskRestorePoint_EndGetAccess.json | 14 + .../DiskRestorePoint_Get.json | 28 + ...enSourceResourceIsFromDifferentRegion.json | 31 + ...DiskRestorePoint_ListByVmRestorePoint.json | 31 + .../Snapshot_BeginGetAccess.json | 20 + ...managedBlobFromADifferentSubscription.json | 48 + ...nUnmanagedBlobFromTheSameSubscription.json | 45 + ...napshot_Create_FromAnExistingSnapshot.json | 45 + ...omAnExistingSnapshotInDifferentRegion.json | 45 + .../snapshotExamples/Snapshot_Delete.json | 13 + .../Snapshot_EndGetAccess.json | 12 + .../snapshotExamples/Snapshot_Get.json | 65 ++ .../Snapshot_ListByResourceGroup.json | 57 ++ .../Snapshot_ListBySubscription.json | 99 ++ .../snapshotExamples/Snapshot_Update.json | 58 ++ ...napshot_Update_WithAcceleratedNetwork.json | 67 ++ .../stable/2022-03-02/DiskRP/snapshot.json | 655 ++++++++++++++ .../stable/2022-03-02/common.json | 204 +++++ .../compute/resource-manager/readme.go.md | 2 +- .../compute/resource-manager/readme.md | 24 +- 79 files changed, 7422 insertions(+), 2 deletions(-) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Create.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListBySubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Update.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_Empty.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAPlatformImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromImportSecure.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_InExtendedLocation.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_UploadDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSecurityProfile.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_EndGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListByResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListBySubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddPurchasePlan.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddSupportsHibernation.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ChangeTier.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_DisableBursting.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_RemoveDiskAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_BeginGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_EndGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListByResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListBySubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json new file mode 100644 index 000000000000..23fff161c261 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json @@ -0,0 +1,844 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}": { + "put": { + "tags": [ + "Disks" + ], + "operationId": "Disks_CreateOrUpdate", + "description": "Creates or updates a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "disk", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Disk" + }, + "description": "Disk object supplied in the body of the Put disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-examples": { + "Create an empty managed disk.": { + "$ref": "./examples/diskExamples/Disk_Create_Empty.json" + }, + "Create a managed disk from a platform image.": { + "$ref": "./examples/diskExamples/Disk_Create_FromAPlatformImage.json" + }, + "Create a managed disk from an existing managed disk in the same or different subscription.": { + "$ref": "./examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json" + }, + "Create a managed disk by importing an unmanaged blob from the same subscription.": { + "$ref": "./examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json" + }, + "Create a managed disk by importing an unmanaged blob from a different subscription.": { + "$ref": "./examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json" + }, + "Create a managed disk by copying a snapshot.": { + "$ref": "./examples/diskExamples/Disk_Create_ByCopyingASnapshot.json" + }, + "Create a managed upload disk.": { + "$ref": "./examples/diskExamples/Disk_Create_UploadDisk.json" + }, + "Create a managed disk and associate with disk access resource.": { + "$ref": "./examples/diskExamples/Disk_Create_WithDiskAccess.json" + }, + "Create a managed disk and associate with disk encryption set.": { + "$ref": "./examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json" + }, + "Create an ultra managed disk with logicalSectorSize 512E": { + "$ref": "./examples/diskExamples/Disk_Create_WithLogicalSectorSize.json" + }, + "Create an empty managed disk in extended location.": { + "$ref": "./examples/diskExamples/Disk_Create_InExtendedLocation.json" + }, + "Create a managed disk with ssd zrs account type.": { + "$ref": "./examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json" + }, + "Create a managed disk with security profile": { + "$ref": "./examples/diskExamples/Disk_Create_WithSecurityProfile.json" + }, + "Create a managed disk from ImportSecure create option": { + "$ref": "./examples/diskExamples/Disk_Create_FromImportSecure.json" + }, + "Create a managed disk from UploadPreparedSecure create option": { + "$ref": "./examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json" + }, + "Create a confidential VM supported disk encrypted with customer managed key": { + "$ref": "./examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Update", + "description": "Updates (patches) a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "disk", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskUpdate" + }, + "description": "Disk object supplied in the body of the Patch disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update managed disk to remove disk access resource association.": { + "$ref": "./examples/diskExamples/Disk_Update_RemoveDiskAccess.json" + }, + "Update a managed disk to add purchase plan.": { + "$ref": "./examples/diskExamples/Disk_Update_AddPurchasePlan.json" + }, + "Update a managed disk to disable bursting.": { + "$ref": "./examples/diskExamples/Disk_Update_DisableBursting.json" + }, + "Create or update a bursting enabled managed disk.": { + "$ref": "./examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json" + }, + "Update a managed disk to add supportsHibernation.": { + "$ref": "./examples/diskExamples/Disk_Update_AddSupportsHibernation.json" + }, + "Update a managed disk to add accelerated networking.": { + "$ref": "./examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json" + }, + "Update a managed disk to change tier.": { + "$ref": "./examples/diskExamples/Disk_Update_ChangeTier.json" + } + } + }, + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Get", + "description": "Gets information about a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-examples": { + "Get information about a managed disk.": { + "$ref": "./examples/diskExamples/Disk_Get.json" + } + } + }, + "delete": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Delete", + "description": "Deletes a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk is deleted, this is an expected error code." + } + }, + "x-ms-examples": { + "Delete a managed disk.": { + "$ref": "./examples/diskExamples/Disk_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks": { + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_ListByResourceGroup", + "description": "Lists all the disks under a resource group.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskList" + } + } + }, + "x-ms-examples": { + "List all managed disks in a resource group.": { + "$ref": "./examples/diskExamples/Disk_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks": { + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_List", + "description": "Lists all the disks under a subscription.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskList" + } + } + }, + "x-ms-examples": { + "List all managed disks in a subscription.": { + "$ref": "./examples/diskExamples/Disk_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/beginGetAccess": { + "post": { + "tags": [ + "Disks" + ], + "operationId": "Disks_GrantAccess", + "description": "Grants access to a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "./diskRPCommon.json#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./diskRPCommon.json#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Get a sas on a managed disk.": { + "$ref": "./examples/diskExamples/Disk_BeginGetAccess.json" + }, + "Get sas on managed disk and VM guest state": { + "$ref": "./examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/endGetAccess": { + "post": { + "tags": [ + "Disks" + ], + "operationId": "Disks_RevokeAccess", + "description": "Revokes access to a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Revoke access to a managed disk.": { + "$ref": "./examples/diskExamples/Disk_EndGetAccess.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "Disk": { + "properties": { + "managedBy": { + "readOnly": true, + "type": "string", + "description": "A relative URI containing the ID of the VM that has the disk attached." + }, + "managedByExtended": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of relative URIs containing the IDs of the VMs that have the disk attached. maxShares should be set to a value greater than one for disks to allow attaching them to multiple VMs." + }, + "sku": { + "$ref": "#/definitions/DiskSku" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Logical zone list for Disk." + }, + "extendedLocation": { + "$ref": "../common.json#/definitions/ExtendedLocation", + "description": "The extended location where the disk will be created. Extended location cannot be changed." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskProperties" + } + }, + "allOf": [ + { + "$ref": "../common.json#/definitions/Resource" + } + ], + "description": "Disk resource." + }, + "DiskUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "sku": { + "$ref": "#/definitions/DiskSku" + } + }, + "description": "Disk update resource." + }, + "DiskList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Disk" + }, + "description": "A list of disks." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disks. Call ListNext() with this to fetch the next page of disks." + } + }, + "required": [ + "value" + ], + "description": "The List Disks operation response." + }, + "DiskSku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS", + "UltraSSD_LRS", + "Premium_ZRS", + "StandardSSD_ZRS" + ], + "x-ms-enum": { + "name": "DiskStorageAccountTypes", + "modelAsString": true, + "values": [ + { + "value": "Standard_LRS", + "description": "Standard HDD locally redundant storage. Best for backup, non-critical, and infrequent access." + }, + { + "value": "Premium_LRS", + "description": "Premium SSD locally redundant storage. Best for production and performance sensitive workloads." + }, + { + "value": "StandardSSD_LRS", + "description": "Standard SSD locally redundant storage. Best for web servers, lightly used enterprise applications and dev/test." + }, + { + "value": "UltraSSD_LRS", + "description": "Ultra SSD locally redundant storage. Best for IO-intensive workloads such as SAP HANA, top tier databases (for example, SQL, Oracle), and other transaction-heavy workloads." + }, + { + "value": "Premium_ZRS", + "description": "Premium SSD zone redundant storage. Best for the production workloads that need storage resiliency against zone failures." + }, + { + "value": "StandardSSD_ZRS", + "description": "Standard SSD zone redundant storage. Best for web servers, lightly used enterprise applications and dev/test that need storage resiliency against zone failures." + } + ] + }, + "description": "The sku name." + }, + "tier": { + "type": "string", + "readOnly": true, + "description": "The sku tier." + } + }, + "description": "The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS, or StandardSSD_ZRS." + }, + "DiskProperties": { + "properties": { + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the disk was created." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "purchasePlan": { + "$ref": "./diskRPCommon.json#/definitions/PurchasePlan", + "description": "Purchase plan information for the the image from which the OS disk was created. E.g. - {name: 2019-Datacenter, publisher: MicrosoftWindowsServer, product: WindowsServer}" + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities for the image from which the OS disk was created." + }, + "creationData": { + "$ref": "./diskRPCommon.json#/definitions/CreationData", + "description": "Disk source information. CreationData information cannot be changed after the disk has been created." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "diskSizeBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The size of the disk in bytes. This field is read only." + }, + "uniqueId": { + "type": "string", + "readOnly": true, + "description": "Unique Guid identifying the resource." + }, + "encryptionSettingsCollection": { + "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used for Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk provisioning state." + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int64", + "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskIOPSReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskState": { + "$ref": "./diskRPCommon.json#/definitions/DiskState", + "description": "The state of the disk." + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "maxShares": { + "type": "integer", + "format": "int32", + "description": "The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time." + }, + "shareInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ShareInfoElement" + }, + "x-ms-identifiers": [ + "vmUri" + ], + "description": "Details of the list of all VMs that have the disk attached. maxShares should be set to a value greater than one for disks to allow attaching them to multiple VMs." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "tier": { + "type": "string", + "description": "Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/. Does not apply to Ultra disks." + }, + "burstingEnabled": { + "type": "boolean", + "description": "Set to true to enable bursting beyond the provisioned performance target of the disk. Bursting is disabled by default. Does not apply to Ultra disks." + }, + "propertyUpdatesInProgress": { + "readOnly": true, + "$ref": "#/definitions/PropertyUpdatesInProgress", + "description": "Properties of the disk for which update is pending." + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a disk supports hibernation." + }, + "securityProfile": { + "$ref": "./diskRPCommon.json#/definitions/DiskSecurityProfile", + "description": "Contains the security related information for the resource." + }, + "completionPercent": { + "type": "number", + "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation." + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + } + }, + "required": [ + "creationData" + ], + "description": "Disk resource properties." + }, + "DiskUpdateProperties": { + "properties": { + "osType": { + "type": "string", + "description": "the Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "encryptionSettingsCollection": { + "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int64", + "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskIOPSReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "maxShares": { + "type": "integer", + "format": "int32", + "description": "The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time." + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "tier": { + "type": "string", + "description": "Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/. Does not apply to Ultra disks." + }, + "burstingEnabled": { + "type": "boolean", + "description": "Set to true to enable bursting beyond the provisioned performance target of the disk. Bursting is disabled by default. Does not apply to Ultra disks." + }, + "purchasePlan": { + "$ref": "./diskRPCommon.json#/definitions/PurchasePlan", + "description": "Purchase plan information to be added on the OS disk" + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities (like accelerated networking) to be added on the OS disk." + }, + "propertyUpdatesInProgress": { + "readOnly": true, + "$ref": "#/definitions/PropertyUpdatesInProgress", + "description": "Properties of the disk for which update is pending." + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a disk supports hibernation." + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + } + }, + "description": "Disk resource update properties." + }, + "ShareInfoElement": { + "properties": { + "vmUri": { + "readOnly": true, + "type": "string", + "description": "A relative URI containing the ID of the VM that has the disk attached." + } + } + }, + "PropertyUpdatesInProgress": { + "properties": { + "targetTier": { + "type": "string", + "description": "The target performance tier of the disk if a tier change operation is in progress." + } + }, + "description": "Properties of the disk for which update is pending." + } + }, + "parameters": { + "DiskNameParameter": { + "name": "diskName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed disk that is being created. The name can't be changed after the disk is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json new file mode 100644 index 000000000000..cc52d1a0b2de --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json @@ -0,0 +1,824 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}": { + "put": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_CreateOrUpdate", + "description": "Creates or updates a disk access resource", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "diskAccess", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskAccess" + }, + "description": "disk access object supplied in the body of the Put disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Create.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_Update", + "description": "Updates (patches) a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "diskAccess", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskAccessUpdate" + }, + "description": "disk access object supplied in the body of the Patch disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Update.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_Get", + "description": "Gets information about a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Get.json" + }, + "Get information about a disk access resource with private endpoints.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json" + } + } + }, + "delete": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_Delete", + "description": "Deletes a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk access resource is already deleted, this is an expected error code." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses": { + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_ListByResourceGroup", + "description": "Lists all the disk access resources under a resource group.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccessList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk access resources in a resource group.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskAccesses": { + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_List", + "description": "Lists all the disk access resources under a subscription.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccessList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk access resources in a subscription.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}/privateLinkResources": { + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_GetPrivateLinkResources", + "description": "Gets the private link resources possible under disk access resource", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + }, + "x-ms-examples": { + "List all possible private link resources under disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "put": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_UpdateAPrivateEndpointConnection", + "description": "Approve or reject a private endpoint connection under disk access resource, this can't be used to create a new private endpoint connection.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "private endpoint connection object supplied in the body of the Put private endpoint connection operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Approve a Private Endpoint Connection under a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_GetAPrivateEndpointConnection", + "description": "Gets information about a private endpoint connection under a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a private endpoint connection under a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json" + } + } + }, + "delete": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_DeleteAPrivateEndpointConnection", + "description": "Deletes a private endpoint connection under a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the private endpoint connection is already deleted, this is an expected error code." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a private endpoint connection under a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}/privateEndpointConnections": { + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_ListPrivateEndpointConnections", + "description": "List information about private endpoint connections under a disk access resource", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a private endpoint connection under a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DiskAccessProperties": { + "properties": { + "privateEndpointConnections": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "A readonly collection of private endpoint connections created on the disk. Currently only one endpoint connection is supported." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk access resource provisioning state." + }, + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the disk access was created." + } + } + }, + "DiskAccess": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskAccessProperties" + }, + "extendedLocation": { + "$ref": "../common.json#/definitions/ExtendedLocation", + "description": "The extended location where the disk access will be created. Extended location cannot be changed." + } + }, + "allOf": [ + { + "$ref": "../common.json#/definitions/Resource" + } + ], + "description": "disk access resource." + }, + "DiskAccessList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskAccess" + }, + "description": "A list of disk access resources." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disk access resources. Call ListNext() with this to fetch the next page of disk access resources." + } + }, + "required": [ + "value" + ], + "description": "The List disk access operation response." + }, + "DiskAccessUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "Used for updating a disk access resource." + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "id": { + "readOnly": true, + "type": "string", + "description": "private link resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "private link resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "private link resource type" + } + }, + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point.", + "readOnly": true + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between DiskAccess and Virtual Network." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "private endpoint connection Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "private endpoint connection name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "private endpoint connection type" + } + }, + "description": "The Private Endpoint Connection resource.", + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of snapshots. Call ListNext() with this to fetch the next page of snapshots." + } + }, + "description": "A list of private link resources" + } + }, + "parameters": { + "DiskAccessNameParameter": { + "name": "diskAccessName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the disk access resource that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json new file mode 100644 index 000000000000..47d2ce525bec --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json @@ -0,0 +1,587 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}": { + "put": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_CreateOrUpdate", + "description": "Creates or updates a disk encryption set", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "diskEncryptionSet", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + }, + "description": "disk encryption set object supplied in the body of the Put disk encryption set operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json" + }, + "Create a disk encryption set with key vault from a different subscription.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Update", + "description": "Updates (patches) a disk encryption set.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "diskEncryptionSet", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskEncryptionSetUpdate" + }, + "description": "disk encryption set object supplied in the body of the Patch disk encryption set operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update a disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json" + }, + "Update a disk encryption set with rotationToLatestKeyVersionEnabled set to true - Succeeded": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json" + }, + "Update a disk encryption set with rotationToLatestKeyVersionEnabled set to true - Updating": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Get", + "description": "Gets information about a disk encryption set.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json" + }, + "Get information about a disk encryption set when auto-key rotation failed.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json" + } + } + }, + "delete": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Delete", + "description": "Deletes a disk encryption set.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk encryption set is already deleted, this is an expected error code." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_ListByResourceGroup", + "description": "Lists all the disk encryption sets under a resource group.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSetList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk encryption sets in a resource group.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_List", + "description": "Lists all the disk encryption sets under a subscription.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSetList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk encryption sets in a subscription.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}/associatedResources": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_ListAssociatedResources", + "description": "Lists all resources that are encrypted with this disk encryption set.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceUriList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all resources that are encrypted with this disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "EncryptionSetProperties": { + "properties": { + "encryptionType": { + "$ref": "#/definitions/DiskEncryptionSetType" + }, + "activeKey": { + "$ref": "#/definitions/KeyForDiskEncryptionSet", + "description": "The key vault key which is currently used by this disk encryption set." + }, + "previousKeys": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/KeyForDiskEncryptionSet" + }, + "x-ms-identifiers": [ + "sourceVault/id" + ], + "description": "A readonly collection of key vault keys previously used by this disk encryption set while a key rotation is in progress. It will be empty if there is no ongoing key rotation." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk encryption set provisioning state." + }, + "rotationToLatestKeyVersionEnabled": { + "type": "boolean", + "description": "Set this flag to true to enable auto-updating of this disk encryption set to the latest key version." + }, + "lastKeyRotationTimestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the active key of this disk encryption set was updated." + }, + "autoKeyRotationError": { + "readOnly": true, + "$ref": "../common.json#/definitions/ApiError", + "description": "The error that was encountered during auto-key rotation. If an error is present, then auto-key rotation will not be attempted until the error on this disk encryption set is fixed." + } + } + }, + "EncryptionSetIdentity": { + "properties": { + "type": { + "type": "string", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "DiskEncryptionSetIdentityType", + "modelAsString": true + }, + "description": "The type of Managed Identity used by the DiskEncryptionSet. Only SystemAssigned is supported for new creations. Disk Encryption Sets can be updated with Identity type None during migration of subscription to a new Azure Active Directory tenant; it will cause the encrypted resources to lose access to the keys." + }, + "principalId": { + "readOnly": true, + "type": "string", + "description": "The object id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-identity-principal-id header in the PUT request if the resource has a systemAssigned(implicit) identity" + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-client-tenant-id header in the PUT request if the resource has a systemAssigned(implicit) identity" + } + }, + "description": "The managed identity for the disk encryption set. It should be given permission on the key vault before it can be used to encrypt disks." + }, + "DiskEncryptionSetType": { + "type": "string", + "description": "The type of key used to encrypt the data of the disk.", + "enum": [ + "EncryptionAtRestWithCustomerKey", + "EncryptionAtRestWithPlatformAndCustomerKeys", + "ConfidentialVmEncryptedWithCustomerKey" + ], + "x-ms-enum": { + "name": "DiskEncryptionSetType", + "modelAsString": true, + "values": [ + { + "value": "EncryptionAtRestWithCustomerKey", + "description": "Resource using diskEncryptionSet would be encrypted at rest with Customer managed key that can be changed and revoked by a customer." + }, + { + "value": "EncryptionAtRestWithPlatformAndCustomerKeys", + "description": "Resource using diskEncryptionSet would be encrypted at rest with two layers of encryption. One of the keys is Customer managed and the other key is Platform managed." + }, + { + "value": "ConfidentialVmEncryptedWithCustomerKey", + "description": "Confidential VM supported disk and VM guest state would be encrypted with customer managed key." + } + ] + } + }, + "KeyForDiskEncryptionSet": { + "properties": { + "sourceVault": { + "$ref": "./diskRPCommon.json#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret. This property is optional and cannot be used if the KeyVault subscription is not the same as the Disk Encryption Set subscription." + }, + "keyUrl": { + "type": "string", + "description": "Fully versioned Key Url pointing to a key in KeyVault. Version segment of the Url is required regardless of rotationToLatestKeyVersionEnabled value." + } + }, + "required": [ + "keyUrl" + ], + "description": "Key Vault Key Url to be used for server side encryption of Managed Disks and Snapshots" + }, + "DiskEncryptionSet": { + "properties": { + "identity": { + "$ref": "#/definitions/EncryptionSetIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EncryptionSetProperties" + } + }, + "allOf": [ + { + "$ref": "../common.json#/definitions/Resource" + } + ], + "description": "disk encryption set resource." + }, + "DiskEncryptionSetUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskEncryptionSetUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "identity": { + "$ref": "#/definitions/EncryptionSetIdentity" + } + }, + "description": "disk encryption set update resource." + }, + "DiskEncryptionSetUpdateProperties": { + "properties": { + "encryptionType": { + "$ref": "#/definitions/DiskEncryptionSetType" + }, + "activeKey": { + "$ref": "#/definitions/KeyForDiskEncryptionSet" + }, + "rotationToLatestKeyVersionEnabled": { + "type": "boolean", + "description": "Set this flag to true to enable auto-updating of this disk encryption set to the latest key version." + } + }, + "description": "disk encryption set resource update properties." + }, + "DiskEncryptionSetList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskEncryptionSet" + }, + "description": "A list of disk encryption sets." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disk encryption sets. Call ListNext() with this to fetch the next page of disk encryption sets." + } + }, + "required": [ + "value" + ], + "description": "The List disk encryption set operation response." + }, + "ResourceUriList": { + "properties": { + "value": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of IDs or Owner IDs of resources which are encrypted with the disk encryption set." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of encrypted resources. Call ListNext() with this to fetch the next page of encrypted resources." + } + }, + "required": [ + "value" + ], + "description": "The List resources which are encrypted with the disk encryption set." + } + }, + "parameters": { + "DiskEncryptionSetNameParameter": { + "name": "diskEncryptionSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the disk encryption set that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json new file mode 100644 index 000000000000..f71e4c3b1a6e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json @@ -0,0 +1,523 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": {}, + "definitions": { + "EncryptionSettingsCollection": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Set this flag to true and provide DiskEncryptionKey and optional KeyEncryptionKey to enable encryption. Set this flag to false and remove DiskEncryptionKey and KeyEncryptionKey to disable encryption. If EncryptionSettings is null in the request object, the existing settings remain unchanged." + }, + "encryptionSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EncryptionSettingsElement" + }, + "x-ms-identifiers": [ + "diskEncryptionKey/sourceVault/id" + ], + "description": "A collection of encryption settings, one for each disk volume." + }, + "encryptionSettingsVersion": { + "type": "string", + "description": "Describes what type of encryption is used for the disks. Once this field is set, it cannot be overwritten. '1.0' corresponds to Azure Disk Encryption with AAD app.'1.1' corresponds to Azure Disk Encryption." + } + }, + "required": [ + "enabled" + ], + "description": "Encryption settings for disk or snapshot" + }, + "EncryptionSettingsElement": { + "properties": { + "diskEncryptionKey": { + "$ref": "#/definitions/KeyVaultAndSecretReference", + "description": "Key Vault Secret Url and vault id of the disk encryption key" + }, + "keyEncryptionKey": { + "$ref": "#/definitions/KeyVaultAndKeyReference", + "description": "Key Vault Key Url and vault id of the key encryption key. KeyEncryptionKey is optional and when provided is used to unwrap the disk encryption key." + } + }, + "description": "Encryption settings for one disk volume." + }, + "KeyVaultAndSecretReference": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret" + }, + "secretUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + } + }, + "required": [ + "secretUrl", + "sourceVault" + ], + "description": "Key Vault Secret Url and vault id of the encryption key " + }, + "KeyVaultAndKeyReference": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret" + }, + "keyUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + } + }, + "required": [ + "keyUrl", + "sourceVault" + ], + "description": "Key Vault Key Url and vault id of KeK, KeK is optional and when provided is used to unwrap the encryptionKey" + }, + "SourceVault": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "description": "The vault id is an Azure Resource Manager Resource id in the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}" + }, + "EncryptionType": { + "type": "string", + "description": "The type of key used to encrypt the data of the disk.", + "enum": [ + "EncryptionAtRestWithPlatformKey", + "EncryptionAtRestWithCustomerKey", + "EncryptionAtRestWithPlatformAndCustomerKeys" + ], + "x-ms-enum": { + "name": "EncryptionType", + "modelAsString": true, + "values": [ + { + "value": "EncryptionAtRestWithPlatformKey", + "description": "Disk is encrypted at rest with Platform managed key. It is the default encryption type. This is not a valid encryption type for disk encryption sets." + }, + { + "value": "EncryptionAtRestWithCustomerKey", + "description": "Disk is encrypted at rest with Customer managed key that can be changed and revoked by a customer." + }, + { + "value": "EncryptionAtRestWithPlatformAndCustomerKeys", + "description": "Disk is encrypted at rest with 2 layers of encryption. One of the keys is Customer managed and the other key is Platform managed." + } + ] + } + }, + "Encryption": { + "properties": { + "diskEncryptionSetId": { + "type": "string", + "description": "ResourceId of the disk encryption set to use for enabling encryption at rest." + }, + "type": { + "$ref": "#/definitions/EncryptionType" + } + }, + "description": "Encryption at rest settings for disk or snapshot" + }, + "NetworkAccessPolicy": { + "type": "string", + "description": "Policy for accessing the disk via network.", + "enum": [ + "AllowAll", + "AllowPrivate", + "DenyAll" + ], + "x-ms-enum": { + "name": "NetworkAccessPolicy", + "modelAsString": true, + "values": [ + { + "value": "AllowAll", + "description": "The disk can be exported or uploaded to from any network." + }, + { + "value": "AllowPrivate", + "description": "The disk can be exported or uploaded to using a DiskAccess resource's private endpoints." + }, + { + "value": "DenyAll", + "description": "The disk cannot be exported." + } + ] + } + }, + "PublicNetworkAccess": { + "type": "string", + "description": "Policy for controlling export on the disk.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "You can generate a SAS URI to access the underlying data of the disk publicly on the internet when NetworkAccessPolicy is set to AllowAll. You can access the data via the SAS URI only from your trusted Azure VNET when NetworkAccessPolicy is set to AllowPrivate." + }, + { + "value": "Disabled", + "description": "You cannot access the underlying data of the disk publicly on the internet even when NetworkAccessPolicy is set to AllowAll. You can access the data via the SAS URI only from your trusted Azure VNET when NetworkAccessPolicy is set to AllowPrivate." + } + ] + } + }, + "DiskState": { + "type": "string", + "description": "This enumerates the possible state of the disk.", + "readOnly": true, + "enum": [ + "Unattached", + "Attached", + "Reserved", + "Frozen", + "ActiveSAS", + "ActiveSASFrozen", + "ReadyToUpload", + "ActiveUpload" + ], + "x-ms-enum": { + "name": "DiskState", + "modelAsString": true, + "values": [ + { + "value": "Unattached", + "description": "The disk is not being used and can be attached to a VM." + }, + { + "value": "Attached", + "description": "The disk is currently attached to a running VM." + }, + { + "value": "Reserved", + "description": "The disk is attached to a stopped-deallocated VM." + }, + { + "value": "Frozen", + "description": "The disk is attached to a VM which is in hibernated state." + }, + { + "value": "ActiveSAS", + "description": "The disk currently has an Active SAS Uri associated with it." + }, + { + "value": "ActiveSASFrozen", + "description": "The disk is attached to a VM in hibernated state and has an active SAS URI associated with it." + }, + { + "value": "ReadyToUpload", + "description": "A disk is ready to be created by upload by requesting a write token." + }, + { + "value": "ActiveUpload", + "description": "A disk is created for upload and a write token has been issued for uploading to it." + } + ] + } + }, + "CreationData": { + "properties": { + "createOption": { + "type": "string", + "enum": [ + "Empty", + "Attach", + "FromImage", + "Import", + "Copy", + "Restore", + "Upload", + "CopyStart", + "ImportSecure", + "UploadPreparedSecure" + ], + "x-ms-enum": { + "name": "DiskCreateOption", + "modelAsString": true, + "values": [ + { + "value": "Empty", + "description": "Create an empty data disk of a size given by diskSizeGB." + }, + { + "value": "Attach", + "description": "Disk will be attached to a VM." + }, + { + "value": "FromImage", + "description": "Create a new disk from a platform image specified by the given imageReference or galleryImageReference." + }, + { + "value": "Import", + "description": "Create a disk by importing from a blob specified by a sourceUri in a storage account specified by storageAccountId." + }, + { + "value": "Copy", + "description": "Create a new disk or snapshot by copying from a disk or snapshot specified by the given sourceResourceId." + }, + { + "value": "Restore", + "description": "Create a new disk by copying from a backup recovery point." + }, + { + "value": "Upload", + "description": "Create a new disk by obtaining a write token and using it to directly upload the contents of the disk." + }, + { + "value": "CopyStart", + "description": "Create a new disk by using a deep copy process, where the resource creation is considered complete only after all data has been copied from the source." + }, + { + "value": "ImportSecure", + "description": "Similar to Import create option. Create a new Trusted Launch VM or Confidential VM supported disk by importing additional blob for VM guest state specified by securityDataUri in storage account specified by storageAccountId" + }, + { + "value": "UploadPreparedSecure", + "description": "Similar to Upload create option. Create a new Trusted Launch VM or Confidential VM supported disk and upload using write token in both disk and VM guest state" + } + ] + }, + "description": "This enumerates the possible sources of a disk's creation." + }, + "storageAccountId": { + "type": "string", + "description": "Required if createOption is Import. The Azure Resource Manager identifier of the storage account containing the blob to import as a disk." + }, + "imageReference": { + "$ref": "#/definitions/ImageDiskReference", + "description": "Disk source information." + }, + "galleryImageReference": { + "$ref": "#/definitions/ImageDiskReference", + "description": "Required if creating from a Gallery Image. The id of the ImageDiskReference will be the ARM id of the shared galley image version from which to create a disk." + }, + "sourceUri": { + "type": "string", + "description": "If createOption is Import, this is the URI of a blob to be imported into a managed disk." + }, + "sourceResourceId": { + "type": "string", + "description": "If createOption is Copy, this is the ARM id of the source snapshot or disk." + }, + "sourceUniqueId": { + "readOnly": true, + "type": "string", + "description": "If this field is set, this is the unique id identifying the source of this resource." + }, + "uploadSizeBytes": { + "type": "integer", + "format": "int64", + "description": "If createOption is Upload, this is the size of the contents of the upload including the VHD footer. This value should be between 20972032 (20 MiB + 512 bytes for the VHD footer) and 35183298347520 bytes (32 TiB + 512 bytes for the VHD footer)." + }, + "logicalSectorSize": { + "type": "integer", + "format": "int32", + "description": "Logical sector size in bytes for Ultra disks. Supported values are 512 ad 4096. 4096 is the default." + }, + "securityDataUri": { + "type": "string", + "description": "If createOption is ImportSecure, this is the URI of a blob to be imported into VM guest state." + } + }, + "required": [ + "createOption" + ], + "description": "Data used when creating a disk." + }, + "ImageDiskReference": { + "properties": { + "id": { + "type": "string", + "description": "A relative uri containing either a Platform Image Repository or user image reference." + }, + "lun": { + "type": "integer", + "format": "int32", + "description": "If the disk is created from an image's data disk, this is an index that indicates which of the data disks in the image to use. For OS disks, this field is null." + } + }, + "required": [ + "id" + ], + "description": "The source image used for creating the disk." + }, + "PurchasePlan": { + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + }, + "promotionCode": { + "type": "string", + "description": "The Offer Promotion Code." + } + }, + "required": [ + "publisher", + "name", + "product" + ], + "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." + }, + "SupportedCapabilities": { + "type": "object", + "properties": { + "acceleratedNetwork": { + "type": "boolean", + "description": "True if the image from which the OS disk is created supports accelerated networking." + } + }, + "description": "List of supported capabilities (like accelerated networking) persisted on the disk resource for VM use." + }, + "DiskSecurityType": { + "type": "string", + "description": "Specifies the SecurityType of the VM. Applicable for OS disks only.", + "enum": [ + "TrustedLaunch", + "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey", + "ConfidentialVM_DiskEncryptedWithPlatformKey", + "ConfidentialVM_DiskEncryptedWithCustomerKey" + ], + "x-ms-enum": { + "name": "DiskSecurityTypes", + "modelAsString": true, + "values": [ + { + "value": "TrustedLaunch", + "description": "Trusted Launch provides security features such as secure boot and virtual Trusted Platform Module (vTPM)" + }, + { + "value": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey", + "description": "Indicates Confidential VM disk with only VM guest state encrypted" + }, + { + "value": "ConfidentialVM_DiskEncryptedWithPlatformKey", + "description": "Indicates Confidential VM disk with both OS disk and VM guest state encrypted with a platform managed key" + }, + { + "value": "ConfidentialVM_DiskEncryptedWithCustomerKey", + "description": "Indicates Confidential VM disk with both OS disk and VM guest state encrypted with a customer managed key" + } + ] + } + }, + "DiskSecurityProfile": { + "properties": { + "securityType": { + "$ref": "#/definitions/DiskSecurityType" + }, + "secureVMDiskEncryptionSetId": { + "type": "string", + "description": "ResourceId of the disk encryption set associated to Confidential VM supported disk encrypted with customer managed key" + } + }, + "description": "Contains the security related information for the resource." + }, + "GrantAccessData": { + "properties": { + "access": { + "type": "string", + "enum": [ + "None", + "Read", + "Write" + ], + "x-ms-enum": { + "name": "AccessLevel", + "modelAsString": true + } + }, + "durationInSeconds": { + "type": "integer", + "format": "int32", + "description": "Time duration in seconds until the SAS access expires." + }, + "getSecureVMGuestStateSAS": { + "type": "boolean", + "description": "Set this flag to true to get additional SAS for VM guest state" + } + }, + "required": [ + "access", + "durationInSeconds" + ], + "description": "Data used for requesting a SAS." + }, + "AccessUri": { + "properties": { + "accessSAS": { + "readOnly": true, + "type": "string", + "description": "A SAS uri for accessing a disk." + }, + "securityDataAccessSAS": { + "readOnly": true, + "type": "string", + "description": "A SAS uri for accessing a VM guest state." + } + }, + "description": "A disk access SAS uri." + } + }, + "parameters": { + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json new file mode 100644 index 000000000000..d2e4f5650cef --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json @@ -0,0 +1,426 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}": { + "get": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_Get", + "description": "Get disk restorePoint resource", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "#/parameters/DiskRestorePointNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskRestorePoint" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get an incremental disk restorePoint resource.": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_Get.json" + }, + "Get an incremental disk restorePoint when source resource is from a different region": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints": { + "get": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_ListByRestorePoint", + "description": "Lists diskRestorePoints under a vmRestorePoint.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskRestorePointList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get an incremental disk restorePoint resource.": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}/beginGetAccess": { + "post": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_GrantAccess", + "description": "Grants access to a diskRestorePoint.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "#/parameters/DiskRestorePointNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "./diskRPCommon.json#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./diskRPCommon.json#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Grants access to a diskRestorePoint.": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}/endGetAccess": { + "post": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_RevokeAccess", + "description": "Revokes access to a diskRestorePoint.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "#/parameters/DiskRestorePointNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Revokes access to a diskRestorePoint.": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json" + } + } + } + } + }, + "definitions": { + "DiskRestorePoint": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskRestorePointProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "description": "Properties of disk restore point" + }, + "DiskRestorePointList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskRestorePoint" + }, + "description": "A list of disk restore points." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disk restore points. Call ListNext() with this to fetch the next page of disk restore points." + } + }, + "required": [ + "value" + ], + "description": "The List Disk Restore Points operation response." + }, + "DiskRestorePointProperties": { + "properties": { + "timeCreated": { + "type": "string", + "format": "date-time", + "description": "The timestamp of restorePoint creation", + "readOnly": true + }, + "sourceResourceId": { + "type": "string", + "description": "arm id of source disk or source disk restore point.", + "readOnly": true + }, + "osType": { + "type": "string", + "readOnly": true, + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "purchasePlan": { + "$ref": "./diskRPCommon.json#/definitions/PurchasePlan", + "description": "Purchase plan information for the the image from which the OS disk was created." + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities (like accelerated networking) for the image from which the OS disk was created." + }, + "familyId": { + "type": "string", + "description": "id of the backing snapshot's MIS family", + "readOnly": true + }, + "sourceUniqueId": { + "type": "string", + "description": "unique incarnation id of the source disk", + "readOnly": true + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys.", + "readOnly": true + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a disk supports hibernation." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "completionPercent": { + "type": "number", + "description": "Percentage complete for the background copy of disk restore point when source resource is from a different region." + }, + "replicationState": { + "type": "string", + "description": "Replication state of disk restore point when source resource is from a different region.", + "readOnly": true + }, + "sourceResourceLocation": { + "type": "string", + "description": "Location of source disk or source disk restore point when source resource is from a different region.", + "readOnly": true + } + }, + "description": "Properties of an incremental disk restore point" + }, + "ProxyOnlyResource": { + "description": "The ProxyOnly Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + } + } + } + }, + "parameters": { + "DiskRestorePointNameParameter": { + "name": "diskRestorePointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the disk restore point created.", + "x-ms-parameter-location": "method" + }, + "RestorePointCollectionNameParameter": { + "name": "restorePointCollectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the restore point collection that the disk restore point belongs.", + "x-ms-parameter-location": "method" + }, + "VmRestorePointNameParameter": { + "name": "vmRestorePointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vm restore point that the disk disk restore point belongs.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json new file mode 100644 index 000000000000..c6cd51cd709d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess", + "privateEndpointConnectionName": "myPrivateEndpointConnection", + "privateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approving myPrivateEndpointConnection" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myPrivateEndpointConenction", + "type": "Microsoft.Compute/diskAccesses/privateEndpointConnections", + "properties": { + "provisioningState": "Updating", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Approving myPrivateEndpointConnection", + "status": "Approved" + } + } + } + }, + "200": { + "body": { + "name": "myPrivateEndpointConnectionName", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnectionName", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Approving myPrivateEndpointConnection", + "status": "Approved" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json new file mode 100644 index 000000000000..09b0aa6facff --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskAccessName": "myDiskAccess", + "privateEndpointConnectionName": "myPrivateEndpointConnection", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json new file mode 100644 index 000000000000..63e33cbe21fe --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess", + "privateEndpointConnectionName": "myPrivateEndpointConnection" + }, + "responses": { + "200": { + "body": { + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnection", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json new file mode 100644 index 000000000000..81c0a5c67951 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnection", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json new file mode 100644 index 000000000000..519ee54d4c55 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateLinkResources/disks", + "name": "disks", + "type": "Microsoft.Compute/diskAccesses/privateLinkResources", + "properties": { + "groupId": "disks", + "requiredMembers": [ + "diskAccess_1" + ], + "requiredZoneNames": [ + "privatelink.blob.core.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Create.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Create.json new file mode 100644 index 000000000000..79c51eb4554b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Create.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess", + "diskAccess": { + "location": "West US" + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskAccess", + "location": "West US", + "type": "Microsoft.Compute/diskAccesses" + } + }, + "200": { + "body": { + "name": "myDiskAccess", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "type": "Microsoft.Compute/diskAccesses", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Delete.json new file mode 100644 index 000000000000..baf843c305cc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskAccessName": "myDiskAccess", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get.json new file mode 100644 index 000000000000..e87777a78dc4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00" + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "name": "myDiskAccess" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json new file mode 100644 index 000000000000..202bbe997c88 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00", + "privateEndpointConnections": [ + { + "name": "myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + ] + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "name": "myDiskAccess" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json new file mode 100644 index 000000000000..f71dcf7a486c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00" + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "name": "myDiskAccess" + }, + { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00", + "privateEndpointConnections": [ + { + "name": "myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2/privateEndpoinConnections/myDiskAccess2.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint2" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + ] + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2", + "name": "myDiskAccess2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskAccesses?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListBySubscription.json new file mode 100644 index 000000000000..efcd8ec181ab --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListBySubscription.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00" + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "name": "myDiskAccess" + }, + { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00", + "privateEndpointConnections": [ + { + "name": "myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2/privateEndpoinConnections/myDiskAccess2.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint2" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + ] + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2", + "name": "myDiskAccess2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskAccesses?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Update.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Update.json new file mode 100644 index 000000000000..68a5d2a57af2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Update.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess", + "diskAccess": { + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess?api-version=2021-04-01" + }, + "body": { + "name": "myDiskAccess", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "type": "Microsoft.Compute/diskAccesses", + "location": "West US", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + } + } + }, + "200": { + "body": { + "name": "myDiskAccess", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "type": "Microsoft.Compute/diskAccesses", + "location": "West US", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json new file mode 100644 index 000000000000..cc9a6c32a7e2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey" + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json new file mode 100644 index 000000000000..8aca5067e553 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey" + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json new file mode 100644 index 000000000000..e2dc9e77807d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskEncryptionSetName": "myDiskEncryptionSet", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json new file mode 100644 index 000000000000..2ac8960a3232 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet" + }, + "responses": { + "200": { + "body": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json new file mode 100644 index 000000000000..65da960a5243 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet" + }, + "responses": { + "200": { + "body": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "rotationToLatestKeyVersionEnabled": true, + "provisioningState": "Succeeded", + "autoKeyRotationError": { + "code": "ManagedServiceIdentityNotFound", + "message": "Auto-key rotation was disabled as managed service identity associated with DiskEncryptionSet 'myDiskEncryptionSet' was not found. Please update the resource with correct identity to re-enable auto-key rotation." + } + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json new file mode 100644 index 000000000000..0fbad7e36705 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet" + }, + "responses": { + "200": { + "body": { + "value": [ + "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}/associatedResources?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json new file mode 100644 index 000000000000..058529291380 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + }, + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault2" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet2", + "name": "myDiskEncryptionSet2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json new file mode 100644 index 000000000000..c93080183767 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + }, + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/mySecondResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault2" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet2", + "name": "myDiskEncryptionSet2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json new file mode 100644 index 000000000000..3c93bf0fb87a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/keyName/keyVersion" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey" + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet?api-version=2021-04-01" + }, + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/keyName/keyVersion" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/keyName/keyVersion" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "lastKeyRotationTimestamp": "2021-04-01T04:41:35.079872+00:00" + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json new file mode 100644 index 000000000000..0d63e6c85469 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "rotationToLatestKeyVersionEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet?api-version=2021-04-01" + }, + "body": { + "name": "myDiskEncryptionSet", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/KeyVersion2" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "rotationToLatestKeyVersionEnabled": true, + "provisioningState": "Succeeded", + "lastKeyRotationTimestamp": "2021-04-01T04:41:35.079872+00:00" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json new file mode 100644 index 000000000000..f098e0677aa6 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "rotationToLatestKeyVersionEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet?api-version=2021-04-01" + }, + "body": { + "name": "myDiskEncryptionSet", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion2" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "rotationToLatestKeyVersionEnabled": true, + "previousKeys": [ + { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + } + ], + "provisioningState": "Updating", + "lastKeyRotationTimestamp": "2021-04-01T04:41:35.079872+00:00" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess.json new file mode 100644 index 000000000000..18fc4ec647ed --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskName": "myDisk", + "api-version": "2022-03-02", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300 + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json new file mode 100644 index 000000000000..f62dcb7217e8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskName": "myDisk", + "api-version": "2022-03-02", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300, + "getSecureVMGuestStateSAS": true + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r", + "securityDataAccessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/b9bf5824-6122-49e0-ba22-042f76ccd8a1_vmgs?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json new file mode 100644 index 000000000000..e2cdac0c6349 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "diskSizeGB": 1024, + "burstingEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 1024, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 1024, + "burstingEnabled": true, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json new file mode 100644 index 000000000000..9410d8658767 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json new file mode 100644 index 000000000000..c238abb14878 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json new file mode 100644 index 000000000000..d46d27ec8f3e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json new file mode 100644 index 000000000000..218c9fff18b5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_DiskEncryptedWithCustomerKey", + "secureVMDiskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_DiskEncryptedWithCustomerKey", + "secureVMDiskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_DiskEncryptedWithCustomerKey", + "secureVMDiskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_Empty.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_Empty.json new file mode 100644 index 000000000000..f7157ab4c739 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_Empty.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAPlatformImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAPlatformImage.json new file mode 100644 index 000000000000..8489ab63ab8c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAPlatformImage.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "{sku}", + "publisher": "{publisher}", + "product": "{offer}" + }, + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + }, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "{sku}", + "publisher": "{publisher}", + "product": "{offer}" + }, + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json new file mode 100644 index 000000000000..0e0204eaa996 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk2", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk2" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk2" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromImportSecure.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromImportSecure.json new file mode 100644 index 000000000000..9f9406656782 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromImportSecure.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey" + }, + "creationData": { + "createOption": "ImportSecure", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "securityDataUri": "https://mystorageaccount.blob.core.windows.net/osimages/vmgs.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey" + }, + "creationData": { + "createOption": "ImportSecure", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "securityDataUri": "https://mystorageaccount.blob.core.windows.net/osimages/vmgs.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey" + }, + "creationData": { + "createOption": "ImportSecure", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "securityDataUri": "https://mystorageaccount.blob.core.windows.net/osimages/vmgs.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json new file mode 100644 index 000000000000..42c11a139813 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "UploadPreparedSecure", + "uploadSizeBytes": 10737418752 + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "UploadPreparedSecure", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "UploadPreparedSecure", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_InExtendedLocation.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_InExtendedLocation.json new file mode 100644 index 000000000000..7809e6bea569 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_InExtendedLocation.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "extendedLocation": { + "type": "EdgeZone", + "name": "{edge-zone-id}" + }, + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "extendedLocation": { + "type": "EdgeZone", + "name": "{edge-zone-id}" + } + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "extendedLocation": { + "type": "EdgeZone", + "name": "{edge-zone-id}" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_UploadDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_UploadDisk.json new file mode 100644 index 000000000000..d1343973551d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_UploadDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskAccess.json new file mode 100644 index 000000000000..6505d0fa0096 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskAccess.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "networkAccessPolicy": "AllowPrivate", + "diskAccessId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/{existing-diskAccess-name}" + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Succeeded", + "networkAccessPolicy": "AllowPrivate", + "diskAccessId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/{existing-diskAccess-name}", + "publicNetworkAccess": "Enabled" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json new file mode 100644 index 000000000000..9468632fbe1a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "encryption": { + "diskEncryptionSetId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Succeeded", + "encryption": { + "diskEncryptionSetId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json new file mode 100644 index 000000000000..3a070a17d271 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "sku": { + "name": "UltraSSD_LRS" + }, + "properties": { + "creationData": { + "createOption": "Empty", + "logicalSectorSize": 512 + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty", + "logicalSectorSize": 512 + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "sku": { + "name": "UltraSSD_LRS", + "tier": "Ultra" + } + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty", + "logicalSectorSize": 512 + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "sku": { + "name": "UltraSSD_LRS", + "tier": "Ultra" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json new file mode 100644 index 000000000000..bc8104da54ab --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "sku": { + "name": "Premium_ZRS" + }, + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "sku": { + "name": "Premium_ZRS", + "tier": "Premium" + } + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "sku": { + "name": "Premium_ZRS", + "tier": "Premium" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSecurityProfile.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSecurityProfile.json new file mode 100644 index 000000000000..c4fc34abd215 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSecurityProfile.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "North Central US", + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "North Central US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "North Central US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Delete.json new file mode 100644 index 000000000000..87c48164eb28 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskName": "myDisk", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_EndGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_EndGetAccess.json new file mode 100644 index 000000000000..a9f420172620 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_EndGetAccess.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskName": "myDisk", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Get.json new file mode 100644 index 000000000000..65bbd77e5ec4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Get.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myManagedDisk" + }, + "responses": { + "200": { + "body": { + "managedBy": "/subscriptions/123caaa-123v-v211-a49f-f88ccac5bf88/resourceGroups/ResourceGroupName/providers/Microsoft.Compute/virtualMachines/TestVM414689371c88843d65ec", + "sku": { + "name": "Standard_LRS" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "test_sku", + "publisher": "test_test_pmc2pc1", + "product": "marketplace_vm_test" + }, + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "supportsHibernation": true, + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 10, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.079872+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListByResourceGroup.json new file mode 100644 index 000000000000..57642890747a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListByResourceGroup.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.872242+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk2" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.3973934+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk3" + } + ], + "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListBySubscription.json new file mode 100644 index 000000000000..e2af47dfe0eb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListBySubscription.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1", + "name": "myManagedDisk1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.872242+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2", + "name": "myManagedDisk2" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.3973934+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk3", + "name": "myManagedDisk3" + } + ], + "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json new file mode 100644 index 000000000000..808f8b01c305 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "supportedCapabilities": { + "acceleratedNetwork": false + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": false + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": false + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddPurchasePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddPurchasePlan.json new file mode 100644 index 000000000000..7983218bdf94 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddPurchasePlan.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "purchasePlan": { + "name": "myPurchasePlanName", + "publisher": "myPurchasePlanPublisher", + "product": "myPurchasePlanProduct", + "promotionCode": "myPurchasePlanPromotionCode" + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "myPurchasePlanName", + "publisher": "myPurchasePlanPublisher", + "product": "myPurchasePlanProduct", + "promotionCode": "myPurchasePlanPromotionCode" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "myPurchasePlanName", + "publisher": "myPurchasePlanPublisher", + "product": "myPurchasePlanProduct", + "promotionCode": "myPurchasePlanPromotionCode" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddSupportsHibernation.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddSupportsHibernation.json new file mode 100644 index 000000000000..4ba654f27b1b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddSupportsHibernation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "supportsHibernation": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportsHibernation": true, + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "diskSizeGB": 127, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportsHibernation": true, + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "diskSizeGB": 127, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ChangeTier.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ChangeTier.json new file mode 100644 index 000000000000..8d78913903cd --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ChangeTier.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "tier": "P30" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "provisioningState": "Updating", + "tier": "P10", + "propertyUpdatesInProgress": { + "targetTier": "P30" + } + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "provisioningState": "Succeeded", + "tier": "P30" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_DisableBursting.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_DisableBursting.json new file mode 100644 index 000000000000..5dbc32fb629a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_DisableBursting.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "burstingEnabled": false + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_RemoveDiskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_RemoveDiskAccess.json new file mode 100644 index 000000000000..f5ecfdeeaa57 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_RemoveDiskAccess.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "networkAccessPolicy": "AllowAll" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating", + "networkAccessPolicy": "AllowAll" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Succeeded", + "networkAccessPolicy": "AllowAll" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json new file mode 100644 index 000000000000..f011b1c59b97 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2022-03-02", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300 + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json new file mode 100644 index 000000000000..50e399fef753 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get.json new file mode 100644 index 000000000000..8da4a20b39de --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpc/restorePoints/vmrp/diskRestorePoints/TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "name": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "properties": { + "timeCreated": "2020-09-16T04:41:35.079872+00:00", + "sourceResourceId": "/subscriptions/d2260d06-e00d-422f-8b63-93df551a59ae/resourceGroups/rg0680fb0c-89f1-41b4-96c0-35733a181558/providers/Microsoft.Compute/disks/TestDisk45ceb03433006d1baee0", + "osType": "Windows", + "hyperVGeneration": "V1", + "familyId": "996bf3ce-b6ff-4e86-9db6-dc27ea06cea5", + "sourceUniqueId": "48e058b1-7eea-4968-b532-10a8a1130c13", + "networkAccessPolicy": "AllowAll", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json new file mode 100644 index 000000000000..88ac8607f2ca --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpc/restorePoints/vmrp/diskRestorePoints/TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "name": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "properties": { + "timeCreated": "2020-09-16T04:41:35.079872+00:00", + "sourceResourceId": "/subscriptions/d2260d06-e00d-422f-8b63-93df551a59ae/resourceGroups/rg0680fb0c-89f1-41b4-96c0-35733a181558/providers/Microsoft.Compute/disks/TestDisk45ceb03433006d1baee0", + "osType": "Windows", + "hyperVGeneration": "V1", + "familyId": "996bf3ce-b6ff-4e86-9db6-dc27ea06cea5", + "sourceUniqueId": "48e058b1-7eea-4968-b532-10a8a1130c13", + "networkAccessPolicy": "AllowAll", + "publicNetworkAccess": "Disabled", + "replicationState": "Succeeded", + "completionPercent": 100, + "sourceResourceLocation": "eastus2" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json new file mode 100644 index 000000000000..7495117e35fc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpc/restorePoints/vmrp/diskRestorePoints/TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "name": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "properties": { + "timeCreated": "2020-09-16T04:41:35.079872+00:00", + "sourceResourceId": "/subscriptions/d2260d06-e00d-422f-8b63-93df551a59ae/resourceGroups/rg0680fb0c-89f1-41b4-96c0-35733a181558/providers/Microsoft.Compute/disks/TestDisk45ceb03433006d1baee0", + "osType": "Windows", + "hyperVGeneration": "V1", + "familyId": "996bf3ce-b6ff-4e86-9db6-dc27ea06cea5", + "sourceUniqueId": "48e058b1-7eea-4968-b532-10a8a1130c13", + "networkAccessPolicy": "AllowAll", + "publicNetworkAccess": "Disabled" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_BeginGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_BeginGetAccess.json new file mode 100644 index 000000000000..e1fb2b64eeea --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_BeginGetAccess.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300 + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json new file mode 100644 index 000000000000..1dd45c7fe1bb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot1", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json new file mode 100644 index 000000000000..ef0040bdc00d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot1", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json new file mode 100644 index 000000000000..b358fee171e8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot2", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "200": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json new file mode 100644 index 000000000000..0fe0c649d353 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot2", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "CopyStart", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "CopyStart", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "200": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "CopyStart", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Delete.json new file mode 100644 index 000000000000..a45ca19b39db --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_EndGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_EndGetAccess.json new file mode 100644 index 000000000000..76e37d04d44e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_EndGetAccess.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Get.json new file mode 100644 index 000000000000..263ae5d5db88 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Get.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot" + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "test_sku", + "publisher": "test_test_pmc2pc1", + "product": "marketplace_vm_test" + }, + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "supportsHibernation": true, + "creationData": { + "createOption": "Copy", + "sourceResourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk", + "sourceUniqueId": "d633885d-d102-4481-901e-5b2413d1a7be" + }, + "diskSizeGB": 100, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.079872+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot", + "name": "mySnapshot" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListByResourceGroup.json new file mode 100644 index 000000000000..96cf8ffdf369 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListByResourceGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot", + "name": "mySnapshot" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListBySubscription.json new file mode 100644 index 000000000000..cbc2c8425cae --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListBySubscription.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:47:30.6630569+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1", + "name": "mySnapshot1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:47:30.3247198+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2", + "name": "mySnapshot2" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update.json new file mode 100644 index 000000000000..dc06103d0b39 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02", + "snapshot": { + "properties": { + "diskSizeGB": 20 + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "diskSizeGB": 20, + "provisioningState": "Updating" + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + }, + "location": "West US", + "name": "mySnapshot" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "diskSizeGB": 20, + "provisioningState": "Succeeded" + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + }, + "location": "West US", + "name": "mySnapshot" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json new file mode 100644 index 000000000000..b3e110dd2224 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02", + "snapshot": { + "properties": { + "diskSizeGB": 20, + "supportedCapabilities": { + "acceleratedNetwork": false + } + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "supportedCapabilities": { + "acceleratedNetwork": false + }, + "diskSizeGB": 20, + "provisioningState": "Updating" + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + }, + "location": "West US", + "name": "mySnapshot" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "supportedCapabilities": { + "acceleratedNetwork": false + }, + "diskSizeGB": 20, + "provisioningState": "Succeeded" + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + }, + "location": "West US", + "name": "mySnapshot" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json new file mode 100644 index 000000000000..38f307380436 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json @@ -0,0 +1,655 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}": { + "put": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_CreateOrUpdate", + "description": "Creates or updates a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "snapshot", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Snapshot" + }, + "description": "Snapshot object supplied in the body of the Put disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Create a snapshot from an existing snapshot in the same or a different subscription.": { + "$ref": "./examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json" + }, + "Create a snapshot by importing an unmanaged blob from the same subscription.": { + "$ref": "./examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json" + }, + "Create a snapshot by importing an unmanaged blob from a different subscription.": { + "$ref": "./examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json" + }, + "Create a snapshot from an existing snapshot in the same or a different subscription in a different region.": { + "$ref": "./examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Update", + "description": "Updates (patches) a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "snapshot", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotUpdate" + }, + "description": "Snapshot object supplied in the body of the Patch snapshot operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Update a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_Update.json" + }, + "Update a snapshot with accelerated networking.": { + "$ref": "./examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Get", + "description": "Gets information about a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Get information about a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_Get.json" + } + } + }, + "delete": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Delete", + "description": "Deletes a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the snapshot is deleted, this is an expected error code." + } + }, + "x-ms-examples": { + "Delete a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_ListByResourceGroup", + "description": "Lists snapshots under a resource group.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotList" + } + } + }, + "x-ms-examples": { + "List all snapshots in a resource group.": { + "$ref": "./examples/snapshotExamples/Snapshot_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_List", + "description": "Lists snapshots under a subscription.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotList" + } + } + }, + "x-ms-examples": { + "List all snapshots in a subscription.": { + "$ref": "./examples/snapshotExamples/Snapshot_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/beginGetAccess": { + "post": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_GrantAccess", + "description": "Grants access to a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "./diskRPCommon.json#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get snapshot access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./diskRPCommon.json#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Get a sas on a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_BeginGetAccess.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/endGetAccess": { + "post": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_RevokeAccess", + "description": "Revokes access to a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Revoke access to a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_EndGetAccess.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "Snapshot": { + "properties": { + "managedBy": { + "readOnly": true, + "type": "string", + "description": "Unused. Always Null." + }, + "sku": { + "$ref": "#/definitions/SnapshotSku" + }, + "extendedLocation": { + "$ref": "../common.json#/definitions/ExtendedLocation", + "description": "The extended location where the snapshot will be created. Extended location cannot be changed." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnapshotProperties" + } + }, + "allOf": [ + { + "$ref": "../common.json#/definitions/Resource" + } + ], + "description": "Snapshot resource." + }, + "SnapshotUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnapshotUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "sku": { + "$ref": "#/definitions/SnapshotSku" + } + }, + "description": "Snapshot update resource." + }, + "SnapshotList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Snapshot" + }, + "description": "A list of snapshots." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of snapshots. Call ListNext() with this to fetch the next page of snapshots." + } + }, + "required": [ + "value" + ], + "description": "The List Snapshots operation response." + }, + "SnapshotSku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "Standard_ZRS" + ], + "x-ms-enum": { + "name": "SnapshotStorageAccountTypes", + "modelAsString": true, + "values": [ + { + "value": "Standard_LRS", + "description": "Standard HDD locally redundant storage" + }, + { + "value": "Premium_LRS", + "description": "Premium SSD locally redundant storage" + }, + { + "value": "Standard_ZRS", + "description": "Standard zone redundant storage" + } + ] + }, + "description": "The sku name." + }, + "tier": { + "type": "string", + "readOnly": true, + "description": "The sku tier." + } + }, + "description": "The snapshots sku name. Can be Standard_LRS, Premium_LRS, or Standard_ZRS. This is an optional parameter for incremental snapshot and the default behavior is the SKU will be set to the same sku as the previous snapshot" + }, + "SnapshotProperties": { + "properties": { + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the snapshot was created." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "purchasePlan": { + "$ref": "./diskRPCommon.json#/definitions/PurchasePlan", + "description": "Purchase plan information for the image from which the source disk for the snapshot was originally created." + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities (like Accelerated Networking) for the image from which the source disk from the snapshot was originally created." + }, + "creationData": { + "$ref": "./diskRPCommon.json#/definitions/CreationData", + "description": "Disk source information. CreationData information cannot be changed after the disk has been created." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "diskSizeBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The size of the disk in bytes. This field is read only." + }, + "diskState": { + "$ref": "./diskRPCommon.json#/definitions/DiskState", + "description": "The state of the snapshot." + }, + "uniqueId": { + "type": "string", + "readOnly": true, + "description": "Unique Guid identifying the resource." + }, + "encryptionSettingsCollection": { + "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk provisioning state." + }, + "incremental": { + "type": "boolean", + "description": "Whether a snapshot is incremental. Incremental snapshots on the same disk occupy less space than full snapshots and can be diffed." + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "securityProfile": { + "$ref": "./diskRPCommon.json#/definitions/DiskSecurityProfile", + "description": "Contains the security related information for the resource." + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a snapshot supports hibernation." + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "completionPercent": { + "type": "number", + "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation." + } + }, + "required": [ + "creationData" + ], + "description": "Snapshot resource properties." + }, + "SnapshotUpdateProperties": { + "properties": { + "osType": { + "type": "string", + "description": "the Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "encryptionSettingsCollection": { + "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a snapshot supports hibernation." + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities (like accelerated networking) for the image from which the OS disk was created." + } + }, + "description": "Snapshot resource update properties." + } + }, + "parameters": { + "SnapshotNameParameter": { + "name": "snapshotName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the snapshot that is being created. The name can't be changed after the snapshot is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The max name length is 80 characters.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json new file mode 100644 index 000000000000..ca21e99fadf9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json @@ -0,0 +1,204 @@ +{ + "swagger": "2.0", + "info": { + "title": "ComputeManagementClient", + "description": "The Compute Management Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": {}, + "definitions": { + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error base." + }, + "InnerError": { + "properties": { + "exceptiontype": { + "type": "string", + "description": "The exception type." + }, + "errordetail": { + "type": "string", + "description": "The internal error message or exception dump." + } + }, + "description": "Inner error details." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "x-ms-identifiers": [ + "message", + "target" + ], + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "Resource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "SubResourceReadOnly": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "ExtendedLocationType": { + "type": "string", + "description": "The type of extendedLocation.", + "enum": [ + "EdgeZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationTypes", + "modelAsString": true + } + }, + "ExtendedLocation": { + "description": "The complex type of the extended location.", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type of the extended location." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/readme.go.md b/specification/compute/resource-manager/readme.go.md index 7998a4c4d26a..773c5f6d4960 100644 --- a/specification/compute/resource-manager/readme.go.md +++ b/specification/compute/resource-manager/readme.go.md @@ -38,7 +38,7 @@ azure-arm: true directive: # we do not need to hack to add a dummy enum entry in track 2, because track 2 generator will generate the enum type even if it only has on entry - - from: disk.json + - from: DiskRP/diskRPCommon.json where: "$.definitions.PurchasePlan" transform: > $["x-ms-client-name"] = "DiskPurchasePlan"; diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index 36b04112bda3..9457b48c4289 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -34,7 +34,7 @@ These are the global settings for the Compute API. title: ComputeManagementClient description: Compute Client openapi-type: arm -tag: package-2021-12-01 +tag: package-2022-03-02 directive: - where: @@ -235,6 +235,28 @@ directive: - RequiredPropertiesMissingInResourceModel ``` +### Tag: package-2022-03-02 + +These settings apply only when `--tag=package-2022-03-02` is specified on the command line. + +``` yaml $(tag) == 'package-2022-03-02' +input-file: +- Microsoft.Compute/stable/2022-03-02/common.json +- Microsoft.Compute/stable/2021-11-01/compute.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json +- Microsoft.Compute/stable/2021-11-01/runCommands.json +- Microsoft.Compute/stable/2021-07-01/skus.json +- Microsoft.Compute/stable/2021-10-01/gallery.json +- Microsoft.Compute/stable/2021-07-01/sharedGallery.json +- Microsoft.Compute/stable/2021-07-01/communityGallery.json +- Microsoft.Compute/stable/2021-03-01/cloudService.json +``` + ### Tag: package-2021-12-01 These settings apply only when `--tag=package-2021-12-01` is specified on the command line. From d7378eb7a947d0bc87cd05a0e250a1826defdf1b Mon Sep 17 00:00:00 2001 From: Theodore Chang Date: Mon, 28 Feb 2022 11:55:41 -0600 Subject: [PATCH 03/25] sync with diskRP 2021-12-01 changes --- .../stable/2022-03-02/DiskRP/disk.json | 14 +++- .../2022-03-02/DiskRP/diskRPCommon.json | 36 +++++++++- .../2022-03-02/DiskRP/diskRestorePoint.json | 2 +- .../Disk_Create_WithDataAccessAuthMode.json | 47 +++++++++++++ .../Disk_Update_ToAddArchitecture.json | 70 +++++++++++++++++++ .../stable/2022-03-02/DiskRP/snapshot.json | 10 ++- 6 files changed, 174 insertions(+), 5 deletions(-) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ToAddArchitecture.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json index 23fff161c261..530e0116637d 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json @@ -103,6 +103,9 @@ "Create a managed disk and associate with disk access resource.": { "$ref": "./examples/diskExamples/Disk_Create_WithDiskAccess.json" }, + "Create a managed disk with dataAccessAuthMode": { + "$ref": "./examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json" + }, "Create a managed disk and associate with disk encryption set.": { "$ref": "./examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json" }, @@ -195,6 +198,9 @@ }, "Update a managed disk to change tier.": { "$ref": "./examples/diskExamples/Disk_Update_ChangeTier.json" + }, + "Update a managed disk to add architecture.": { + "$ref": "./examples/diskExamples//Disk_Update_ToAddArchitecture.json" } } }, @@ -715,6 +721,9 @@ }, "publicNetworkAccess": { "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "dataAccessAuthMode": { + "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode" } }, "required": [ @@ -795,7 +804,7 @@ }, "supportedCapabilities": { "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", - "description": "List of supported capabilities (like accelerated networking) to be added on the OS disk." + "description": "List of supported capabilities to be added on the OS disk." }, "propertyUpdatesInProgress": { "readOnly": true, @@ -808,6 +817,9 @@ }, "publicNetworkAccess": { "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "dataAccessAuthMode": { + "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode" } }, "description": "Disk resource update properties." diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json index f71e4c3b1a6e..d8ce97823b90 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json @@ -416,9 +416,21 @@ "acceleratedNetwork": { "type": "boolean", "description": "True if the image from which the OS disk is created supports accelerated networking." + }, + "architecture": { + "type": "string", + "description": "CPU architecture supported by an OS disk.", + "enum": [ + "x64", + "Arm64" + ], + "x-ms-enum": { + "name": "Architecture", + "modelAsString": true + } } }, - "description": "List of supported capabilities (like accelerated networking) persisted on the disk resource for VM use." + "description": "List of supported capabilities persisted on the disk resource for VM use." }, "DiskSecurityType": { "type": "string", @@ -508,6 +520,28 @@ } }, "description": "A disk access SAS uri." + }, + "DataAccessAuthMode": { + "type": "string", + "description": "Additional authentication requirements when exporting or uploading to a disk or snapshot.", + "enum": [ + "AzureActiveDirectory", + "None" + ], + "x-ms-enum": { + "name": "DataAccessAuthMode", + "modelAsString": true, + "values": [ + { + "value": "AzureActiveDirectory", + "description": "When export/upload URL is used, the system checks if the user has an identity in Azure Active Directory and has necessary permissions to export/upload the data. Please refer to aka.ms/DisksAzureADAuth." + }, + { + "value": "None", + "description": "No additional authentication would be performed when accessing export/upload URL." + } + ] + } } }, "parameters": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json index d2e4f5650cef..566e09a87448 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json @@ -328,7 +328,7 @@ }, "supportedCapabilities": { "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", - "description": "List of supported capabilities (like accelerated networking) for the image from which the OS disk was created." + "description": "List of supported capabilities for the image from which the OS disk was created." }, "familyId": { "type": "string", diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json new file mode 100644 index 000000000000..b75b887df49b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "dataAccessAuthMode": "AzureActiveDirectory" + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Succeeded", + "dataAccessAuthMode": "AzureActiveDirectory" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ToAddArchitecture.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ToAddArchitecture.json new file mode 100644 index 000000000000..15a5c3ce02df --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ToAddArchitecture.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "supportedCapabilities": { + "architecture": "Arm64" + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-12-01" + }, + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "architecture": "Arm64" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "architecture": "Arm64" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json index 38f307380436..b09577c194d5 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json @@ -522,7 +522,7 @@ }, "supportedCapabilities": { "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", - "description": "List of supported capabilities (like Accelerated Networking) for the image from which the source disk from the snapshot was originally created." + "description": "List of supported capabilities for the image from which the source disk from the snapshot was originally created." }, "creationData": { "$ref": "./diskRPCommon.json#/definitions/CreationData", @@ -586,6 +586,9 @@ "completionPercent": { "type": "number", "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation." + }, + "dataAccessAuthMode": { + "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode" } }, "required": [ @@ -634,9 +637,12 @@ "publicNetworkAccess": { "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" }, + "dataAccessAuthMode": { + "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode" + }, "supportedCapabilities": { "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", - "description": "List of supported capabilities (like accelerated networking) for the image from which the OS disk was created." + "description": "List of supported capabilities for the image from which the OS disk was created." } }, "description": "Snapshot resource update properties." From 768d270400ea0dca493698535b1c54dd3dff2f33 Mon Sep 17 00:00:00 2001 From: Theodore Chang Date: Mon, 14 Mar 2022 01:51:34 -0500 Subject: [PATCH 04/25] Update creationData description (#18050) * Update diskRPCommon.json * Update diskRPCommon.json --- .../stable/2022-03-02/DiskRP/diskRPCommon.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json index d975129eb19a..5f1cd76b1a4b 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json @@ -328,7 +328,7 @@ }, "imageReference": { "$ref": "#/definitions/ImageDiskReference", - "description": "Disk source information." + "description": "Disk source information for PIR or user images." }, "galleryImageReference": { "$ref": "#/definitions/ImageDiskReference", From 908c4ee7d9d25717895abd2a74cfd18e179adbc6 Mon Sep 17 00:00:00 2001 From: anshulsolanki21 <73930854+anshulsolanki21@users.noreply.github.com> Date: Thu, 28 Apr 2022 21:05:17 +0530 Subject: [PATCH 05/25] adding SecurityProfile in DiskRestorePointProperties (#18826) --- .../stable/2022-03-02/DiskRP/diskRestorePoint.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json index 566e09a87448..67ea13f1b56d 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json @@ -372,6 +372,10 @@ "type": "string", "description": "Location of source disk or source disk restore point when source resource is from a different region.", "readOnly": true + }, + "securityProfile": { + "$ref": "./diskRPCommon.json#/definitions/DiskSecurityProfile", + "description": "Contains the security related information for the resource." } }, "description": "Properties of an incremental disk restore point" From 3ccee3bfec5a44005bb25d7af6d0c29d8b67b7be Mon Sep 17 00:00:00 2001 From: parkhyukjun89 Date: Fri, 29 Apr 2022 07:47:19 -0700 Subject: [PATCH 06/25] add cross-tenant feature (#18718) * add cross-tenant feature * fix filename typo * prettier --- .../2022-03-02/DiskRP/diskEncryptionSet.json | 29 ++++++++ ...eate_WithKeyVaultFromADifferentTenant.json | 66 +++++++++++++++++++ 2 files changed, 95 insertions(+) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json index 47d2ce525bec..5bddc68f2f36 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json @@ -90,6 +90,9 @@ }, "Create a disk encryption set with key vault from a different subscription.": { "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json" + }, + "Create a disk encryption set with key vault from a different tenant.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json" } }, "x-ms-long-running-operation": true @@ -411,6 +414,10 @@ "readOnly": true, "$ref": "../common.json#/definitions/ApiError", "description": "The error that was encountered during auto-key rotation. If an error is present, then auto-key rotation will not be attempted until the error on this disk encryption set is fixed." + }, + "federatedClientId": { + "type": "string", + "description": "Multi-tenant application client id to access key vault in a different tenant. Setting the value to 'None' will clear the property." } } }, @@ -420,6 +427,8 @@ "type": "string", "enum": [ "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", "None" ], "x-ms-enum": { @@ -437,6 +446,26 @@ "readOnly": true, "type": "string", "description": "The tenant id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-client-tenant-id header in the PUT request if the resource has a systemAssigned(implicit) identity" + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "x-ms-client-name": "userAssignedIdentitiesValue", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the disk encryption set. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." } }, "description": "The managed identity for the disk encryption set. It should be given permission on the key vault before it can be used to encrypt disks." diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json new file mode 100644 index 000000000000..ac7c9abd0986 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "location": "West US", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}": {} + } + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferenttenant.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "federatedClientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}": {} + } + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferenttenant.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "federatedClientId": "00000000-0000-0000-0000-000000000000", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}": {} + } + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferenttenant.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "federatedClientId": "00000000-0000-0000-0000-000000000000", + "previousKeys": [] + } + } + } + } +} From ad5a64ac4d19511a43c3e94373cb9190cac1c68b Mon Sep 17 00:00:00 2001 From: Akash Pargat Date: Fri, 29 Apr 2022 09:47:52 -0500 Subject: [PATCH 07/25] Swagger changes for PremiumV2 in DiskRP (#18786) * Swagger changes for PremiumV2 in DiskRP * Added new property copyCompletionError * Updated description for new property copyCompletionError * Added the type as object for CopyCompletionError * Addressed comment to update the description for CopySourceNotFound Co-authored-by: akashpargat --- .../stable/2022-03-02/DiskRP/disk.json | 12 +++- .../2022-03-02/DiskRP/diskRPCommon.json | 31 ++++++++++ ...k_Create_WithPremiumV2_LRSAccountType.json | 58 +++++++++++++++++++ .../stable/2022-03-02/DiskRP/snapshot.json | 4 ++ 4 files changed, 103 insertions(+), 2 deletions(-) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json index 530e0116637d..440fe1b879c7 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json @@ -118,6 +118,9 @@ "Create a managed disk with ssd zrs account type.": { "$ref": "./examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json" }, + "Create a managed disk with premium v2 account type.": { + "$ref": "./examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json" + }, "Create a managed disk with security profile": { "$ref": "./examples/diskExamples/Disk_Create_WithSecurityProfile.json" }, @@ -532,7 +535,8 @@ "StandardSSD_LRS", "UltraSSD_LRS", "Premium_ZRS", - "StandardSSD_ZRS" + "StandardSSD_ZRS", + "PremiumV2_LRS" ], "x-ms-enum": { "name": "DiskStorageAccountTypes", @@ -561,6 +565,10 @@ { "value": "StandardSSD_ZRS", "description": "Standard SSD zone redundant storage. Best for web servers, lightly used enterprise applications and dev/test that need storage resiliency against zone failures." + }, + { + "value": "PremiumV2_LRS", + "description": "Premium SSD v2 locally redundant storage. Best for production and performance-sensitive workloads that consistently require low latency and high IOPS and throughput." } ] }, @@ -572,7 +580,7 @@ "description": "The sku tier." } }, - "description": "The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS, or StandardSSD_ZRS." + "description": "The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS, StandardSSD_ZRS, or PremiumV2_LRS." }, "DiskProperties": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json index 5f1cd76b1a4b..52d31fcdfd24 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json @@ -410,6 +410,37 @@ ], "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." }, + "CopyCompletionError": { + "type": "object", + "properties": { + "errorCode": { + "type": "string", + "description": "Indicates the error code if the background copy of a resource created via the CopyStart operation fails.", + "enum": [ + "CopySourceNotFound" + ], + "x-ms-enum": { + "name": "CopyCompletionError", + "modelAsString": true, + "values": [ + { + "value": "CopySourceNotFound", + "description": "Indicates that the source snapshot was deleted while the background copy of the resource created via CopyStart operation was in progress." + } + ] + } + }, + "errorMessage": { + "type": "string", + "description": "Indicates the error message if the background copy of a resource created via the CopyStart operation fails." + } + }, + "required": [ + "errorCode", + "errorMessage" + ], + "description": "Indicates the error details if the background copy of a resource created via the CopyStart operation fails." + }, "SupportedCapabilities": { "type": "object", "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json new file mode 100644 index 000000000000..547ae8440e70 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myPremiumV2Disk", + "disk": { + "location": "West US", + "sku": { + "name": "PremiumV2_LRS" + }, + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "diskIOPSReadWrite": 125, + "diskMBpsReadWrite": 3000 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myPremiumV2Disk", + "sku": { + "name": "PremiumV2_LRS", + "tier": "Premium" + } + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myPremiumV2Disk", + "sku": { + "name": "PremiumV2_LRS", + "tier": "Premium" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json index b09577c194d5..c387fe78db9e 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json @@ -587,6 +587,10 @@ "type": "number", "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation." }, + "copyCompletionError": { + "$ref": "./diskRPCommon.json#/definitions/CopyCompletionError", + "description": "Indicates the error details if the background copy of a resource created via the CopyStart operation fails." + }, "dataAccessAuthMode": { "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode" } From cc7ce727542520b02c2b62682f48e1fad2a21cfb Mon Sep 17 00:00:00 2001 From: jerryc3 <48365571+jerryc3@users.noreply.github.com> Date: Tue, 3 May 2022 07:21:22 -0700 Subject: [PATCH 08/25] Add new Azure Compute Gallery image ids to ImageDiskReference for PutDisk Support in 2022-03-02 Api Version (#18868) * new sig ids for put disk 2022-03-02 * fix errors and add example path * extra space * remove required id * prettify common Co-authored-by: Jerry Chan --- .../stable/2022-03-02/DiskRP/disk.json | 9 +++ .../2022-03-02/DiskRP/diskRPCommon.json | 17 +++-- ...omAnAzureComputeGalleryCommunityImage.json | 62 +++++++++++++++++++ ...nAzureComputeGalleryDirectSharedImage.json | 62 +++++++++++++++++++ ...Create_FromAnAzureComputeGalleryImage.json | 62 +++++++++++++++++++ 5 files changed, 206 insertions(+), 6 deletions(-) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json index 440fe1b879c7..9e46f5d80d07 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json @@ -132,6 +132,15 @@ }, "Create a confidential VM supported disk encrypted with customer managed key": { "$ref": "./examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json" + }, + "Create a managed disk from an Azure Compute Gallery image.": { + "$ref": "./examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json" + }, + "Create a managed disk from an Azure Compute Gallery direct shared image.": { + "$ref": "./examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json" + }, + "Create a managed disk from an Azure Compute Gallery community image.": { + "$ref": "./examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json" } }, "x-ms-long-running-operation": true diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json index 52d31fcdfd24..bd84ca1adb13 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json @@ -332,7 +332,7 @@ }, "galleryImageReference": { "$ref": "#/definitions/ImageDiskReference", - "description": "Required if creating from a Gallery Image. The id of the ImageDiskReference will be the ARM id of the shared galley image version from which to create a disk." + "description": "Required if creating from a Gallery Image. The id/sharedGalleryImageId/communityGalleryImageId of the ImageDiskReference will be the ARM id of the shared galley image version from which to create a disk." }, "sourceUri": { "type": "string", @@ -371,7 +371,15 @@ "properties": { "id": { "type": "string", - "description": "A relative uri containing either a Platform Image Repository or user image reference." + "description": "A relative uri containing either a Platform Image Repository, user image, or Azure Compute Gallery image reference." + }, + "sharedGalleryImageId": { + "type": "string", + "description": "A relative uri containing a direct shared Azure Compute Gallery image reference." + }, + "communityGalleryImageId": { + "type": "string", + "description": "A relative uri containing a community Azure Compute Gallery image reference." }, "lun": { "type": "integer", @@ -379,9 +387,6 @@ "description": "If the disk is created from an image's data disk, this is an index that indicates which of the data disks in the image to use. For OS disks, this field is null." } }, - "required": [ - "id" - ], "description": "The source image used for creating the disk." }, "PurchasePlan": { @@ -458,7 +463,7 @@ "x-ms-enum": { "name": "Architecture", "modelAsString": true - } + } } }, "description": "List of supported capabilities persisted on the disk resource for VM use." diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json new file mode 100644 index 000000000000..653e7928851b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "communityGalleryImageId": "/CommunityGalleries/{communityGalleryPublicGalleryName}/Images/{imageName}/Versions/1.0.0" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "communityGalleryImageId": "/CommunityGalleries/{communityGalleryPublicGalleryName}/Images/{imageName}/Versions/1.0.0" + } + }, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "communityGalleryImageId": "/CommunityGalleries/{communityGalleryPublicGalleryName}/Images/{imageName}/Versions/1.0.0" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json new file mode 100644 index 000000000000..86b42c2293f4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "sharedGalleryImageId": "/SharedGalleries/{sharedGalleryUniqueName}/Images/{imageName}/Versions/1.0.0" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "sharedGalleryImageId": "/SharedGalleries/{sharedGalleryUniqueName}/Images/{imageName}/Versions/1.0.0" + } + }, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "sharedGalleryImageId": "/SharedGalleries/{sharedGalleryUniqueName}/Images/{imageName}/Versions/1.0.0" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json new file mode 100644 index 000000000000..3fa048836521 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "id": "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Providers/Microsoft.Compute/Galleries/{galleryName}/Images/{imageName}/Versions/1.0.0" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "id": "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Providers/Microsoft.Compute/Galleries/{galleryName}/Images/{imageName}/Versions/1.0.0" + } + }, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "id": "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Providers/Microsoft.Compute/Galleries/{galleryName}/Images/{imageName}/Versions/1.0.0" + } + } + } + } + } + } +} From dddf6b956696f2bc063d78c42d8a70b7019793d7 Mon Sep 17 00:00:00 2001 From: parkhyukjun89 Date: Tue, 10 May 2022 07:55:23 -0700 Subject: [PATCH 09/25] Feature/cplat 2022 03 02 (#18945) * add cross-tenant feature * fix filename typo * prettier * add federatedClientId to diskEncryptionSetUpdateProperties --- .../stable/2022-03-02/DiskRP/diskEncryptionSet.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json index 5bddc68f2f36..b758526df71d 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json @@ -560,6 +560,10 @@ "rotationToLatestKeyVersionEnabled": { "type": "boolean", "description": "Set this flag to true to enable auto-updating of this disk encryption set to the latest key version." + }, + "federatedClientId": { + "type": "string", + "description": "Multi-tenant application client id to access key vault in a different tenant. Setting the value to 'None' will clear the property." } }, "description": "disk encryption set resource update properties." From 91104997a9d007c9b87bb2fa97c0f03b264247bb Mon Sep 17 00:00:00 2001 From: Haider Agha Date: Tue, 17 May 2022 17:19:36 -0400 Subject: [PATCH 10/25] New ApI Version --- .../stable/2022-03-02/DiskRP/disk.json | 856 ++++++++++++++++++ .../stable/2022-03-02/DiskRP/diskAccess.json | 824 +++++++++++++++++ .../2022-03-02/DiskRP/diskEncryptionSet.json | 587 ++++++++++++ .../2022-03-02/DiskRP/diskRPCommon.json | 557 ++++++++++++ .../2022-03-02/DiskRP/diskRestorePoint.json | 426 +++++++++ ...cessPrivateEndpointConnection_Approve.json | 54 ++ ...ccessPrivateEndpointConnection_Delete.json | 14 + ...skAccessPrivateEndpointConnection_Get.json | 29 + ...teEndpointConnection_ListByDiskAccess.json | 32 + .../DiskAccessPrivateLinkResources_Get.json | 30 + .../diskAccessExamples/DiskAccess_Create.json | 32 + .../diskAccessExamples/DiskAccess_Delete.json | 13 + .../diskAccessExamples/DiskAccess_Get.json | 26 + .../DiskAccess_Get_WithPrivateEndpoints.json | 44 + .../DiskAccess_ListByResourceGroup.json | 62 ++ .../DiskAccess_ListBySubscription.json | 61 ++ .../diskAccessExamples/DiskAccess_Update.json | 43 + .../DiskEncryptionSet_Create.json | 63 ++ ...ithKeyVaultFromADifferentSubscription.json | 54 ++ .../DiskEncryptionSet_Delete.json | 13 + .../DiskEncryptionSet_Get.json | 36 + ...ptionSet_Get_WithAutoKeyRotationError.json | 41 + ...EncryptionSet_ListAssociatedResources.json | 19 + ...DiskEncryptionSet_ListByResourceGroup.json | 64 ++ .../DiskEncryptionSet_ListBySubscription.json | 63 ++ .../DiskEncryptionSet_Update.json | 75 ++ ...WithRotationToLatestKeyVersionEnabled.json | 63 ++ ...onToLatestKeyVersionEnabledInProgress.json | 68 ++ .../diskExamples/Disk_BeginGetAccess.json | 20 + .../Disk_BeginGetAccess_WithVMGuestState.json | 22 + .../Disk_CreateOrUpdate_BurstingEnabled.json | 46 + .../Disk_Create_ByCopyingASnapshot.json | 45 + ...portingBlobFromADifferentSubscription.json | 48 + ...yImportingBlobFromTheSameSubscription.json | 45 + ...entialVMSupportedDiskEncryptedWithCMK.json | 66 ++ .../diskExamples/Disk_Create_Empty.json | 45 + .../Disk_Create_FromAPlatformImage.json | 72 ++ ...Disk_Create_FromAnExistingManagedDisk.json | 45 + .../Disk_Create_FromImportSecure.json | 63 ++ .../Disk_Create_FromUploadPreparedSecure.json | 57 ++ .../Disk_Create_InExtendedLocation.json | 57 ++ .../diskExamples/Disk_Create_UploadDisk.json | 45 + .../Disk_Create_WithDataAccessAuthMode.json | 47 + .../Disk_Create_WithDiskAccess.json | 50 + .../Disk_Create_WithDiskEncryptionSet.json | 51 ++ .../Disk_Create_WithLogicalSectorSize.json | 59 ++ .../Disk_Create_WithSSDZRSAccountType.json | 56 ++ .../Disk_Create_WithSecurityProfile.json | 63 ++ .../examples/diskExamples/Disk_Delete.json | 13 + .../diskExamples/Disk_EndGetAccess.json | 12 + .../examples/diskExamples/Disk_Get.json | 73 ++ .../Disk_ListByResourceGroup.json | 120 +++ .../diskExamples/Disk_ListBySubscription.json | 119 +++ .../Disk_Update_AddAcceleratedNetworking.json | 70 ++ .../Disk_Update_AddPurchasePlan.json | 79 ++ .../Disk_Update_AddSupportsHibernation.json | 60 ++ .../diskExamples/Disk_Update_ChangeTier.json | 47 + .../Disk_Update_DisableBursting.json | 42 + .../Disk_Update_RemoveDiskAccess.json | 46 + .../Disk_Update_ToAddArchitecture.json | 70 ++ .../DiskRestorePoint_BeginGetAccess.json | 22 + .../DiskRestorePoint_EndGetAccess.json | 14 + .../DiskRestorePoint_Get.json | 28 + ...enSourceResourceIsFromDifferentRegion.json | 31 + ...DiskRestorePoint_ListByVmRestorePoint.json | 31 + .../Snapshot_BeginGetAccess.json | 20 + ...managedBlobFromADifferentSubscription.json | 48 + ...nUnmanagedBlobFromTheSameSubscription.json | 45 + ...napshot_Create_FromAnExistingSnapshot.json | 45 + ...omAnExistingSnapshotInDifferentRegion.json | 45 + .../snapshotExamples/Snapshot_Delete.json | 13 + .../Snapshot_EndGetAccess.json | 12 + .../snapshotExamples/Snapshot_Get.json | 65 ++ .../Snapshot_ListByResourceGroup.json | 57 ++ .../Snapshot_ListBySubscription.json | 99 ++ .../snapshotExamples/Snapshot_Update.json | 58 ++ ...napshot_Update_WithAcceleratedNetwork.json | 67 ++ .../stable/2022-03-02/DiskRP/snapshot.json | 661 ++++++++++++++ .../stable/2022-03-02/common.json | 204 +++++ 79 files changed, 7567 insertions(+) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Create.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListBySubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Update.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_Empty.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAPlatformImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromImportSecure.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_InExtendedLocation.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_UploadDisk.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSecurityProfile.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_EndGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListByResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListBySubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddPurchasePlan.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddSupportsHibernation.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ChangeTier.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_DisableBursting.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_RemoveDiskAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ToAddArchitecture.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_BeginGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Delete.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_EndGetAccess.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Get.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListByResourceGroup.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListBySubscription.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json new file mode 100644 index 000000000000..530e0116637d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json @@ -0,0 +1,856 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}": { + "put": { + "tags": [ + "Disks" + ], + "operationId": "Disks_CreateOrUpdate", + "description": "Creates or updates a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "disk", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Disk" + }, + "description": "Disk object supplied in the body of the Put disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-examples": { + "Create an empty managed disk.": { + "$ref": "./examples/diskExamples/Disk_Create_Empty.json" + }, + "Create a managed disk from a platform image.": { + "$ref": "./examples/diskExamples/Disk_Create_FromAPlatformImage.json" + }, + "Create a managed disk from an existing managed disk in the same or different subscription.": { + "$ref": "./examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json" + }, + "Create a managed disk by importing an unmanaged blob from the same subscription.": { + "$ref": "./examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json" + }, + "Create a managed disk by importing an unmanaged blob from a different subscription.": { + "$ref": "./examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json" + }, + "Create a managed disk by copying a snapshot.": { + "$ref": "./examples/diskExamples/Disk_Create_ByCopyingASnapshot.json" + }, + "Create a managed upload disk.": { + "$ref": "./examples/diskExamples/Disk_Create_UploadDisk.json" + }, + "Create a managed disk and associate with disk access resource.": { + "$ref": "./examples/diskExamples/Disk_Create_WithDiskAccess.json" + }, + "Create a managed disk with dataAccessAuthMode": { + "$ref": "./examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json" + }, + "Create a managed disk and associate with disk encryption set.": { + "$ref": "./examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json" + }, + "Create an ultra managed disk with logicalSectorSize 512E": { + "$ref": "./examples/diskExamples/Disk_Create_WithLogicalSectorSize.json" + }, + "Create an empty managed disk in extended location.": { + "$ref": "./examples/diskExamples/Disk_Create_InExtendedLocation.json" + }, + "Create a managed disk with ssd zrs account type.": { + "$ref": "./examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json" + }, + "Create a managed disk with security profile": { + "$ref": "./examples/diskExamples/Disk_Create_WithSecurityProfile.json" + }, + "Create a managed disk from ImportSecure create option": { + "$ref": "./examples/diskExamples/Disk_Create_FromImportSecure.json" + }, + "Create a managed disk from UploadPreparedSecure create option": { + "$ref": "./examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json" + }, + "Create a confidential VM supported disk encrypted with customer managed key": { + "$ref": "./examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Update", + "description": "Updates (patches) a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "disk", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskUpdate" + }, + "description": "Disk object supplied in the body of the Patch disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update managed disk to remove disk access resource association.": { + "$ref": "./examples/diskExamples/Disk_Update_RemoveDiskAccess.json" + }, + "Update a managed disk to add purchase plan.": { + "$ref": "./examples/diskExamples/Disk_Update_AddPurchasePlan.json" + }, + "Update a managed disk to disable bursting.": { + "$ref": "./examples/diskExamples/Disk_Update_DisableBursting.json" + }, + "Create or update a bursting enabled managed disk.": { + "$ref": "./examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json" + }, + "Update a managed disk to add supportsHibernation.": { + "$ref": "./examples/diskExamples/Disk_Update_AddSupportsHibernation.json" + }, + "Update a managed disk to add accelerated networking.": { + "$ref": "./examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json" + }, + "Update a managed disk to change tier.": { + "$ref": "./examples/diskExamples/Disk_Update_ChangeTier.json" + }, + "Update a managed disk to add architecture.": { + "$ref": "./examples/diskExamples//Disk_Update_ToAddArchitecture.json" + } + } + }, + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Get", + "description": "Gets information about a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-examples": { + "Get information about a managed disk.": { + "$ref": "./examples/diskExamples/Disk_Get.json" + } + } + }, + "delete": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Delete", + "description": "Deletes a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk is deleted, this is an expected error code." + } + }, + "x-ms-examples": { + "Delete a managed disk.": { + "$ref": "./examples/diskExamples/Disk_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks": { + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_ListByResourceGroup", + "description": "Lists all the disks under a resource group.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskList" + } + } + }, + "x-ms-examples": { + "List all managed disks in a resource group.": { + "$ref": "./examples/diskExamples/Disk_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks": { + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_List", + "description": "Lists all the disks under a subscription.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskList" + } + } + }, + "x-ms-examples": { + "List all managed disks in a subscription.": { + "$ref": "./examples/diskExamples/Disk_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/beginGetAccess": { + "post": { + "tags": [ + "Disks" + ], + "operationId": "Disks_GrantAccess", + "description": "Grants access to a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "./diskRPCommon.json#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./diskRPCommon.json#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Get a sas on a managed disk.": { + "$ref": "./examples/diskExamples/Disk_BeginGetAccess.json" + }, + "Get sas on managed disk and VM guest state": { + "$ref": "./examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/endGetAccess": { + "post": { + "tags": [ + "Disks" + ], + "operationId": "Disks_RevokeAccess", + "description": "Revokes access to a disk.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Revoke access to a managed disk.": { + "$ref": "./examples/diskExamples/Disk_EndGetAccess.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "Disk": { + "properties": { + "managedBy": { + "readOnly": true, + "type": "string", + "description": "A relative URI containing the ID of the VM that has the disk attached." + }, + "managedByExtended": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of relative URIs containing the IDs of the VMs that have the disk attached. maxShares should be set to a value greater than one for disks to allow attaching them to multiple VMs." + }, + "sku": { + "$ref": "#/definitions/DiskSku" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Logical zone list for Disk." + }, + "extendedLocation": { + "$ref": "../common.json#/definitions/ExtendedLocation", + "description": "The extended location where the disk will be created. Extended location cannot be changed." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskProperties" + } + }, + "allOf": [ + { + "$ref": "../common.json#/definitions/Resource" + } + ], + "description": "Disk resource." + }, + "DiskUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "sku": { + "$ref": "#/definitions/DiskSku" + } + }, + "description": "Disk update resource." + }, + "DiskList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Disk" + }, + "description": "A list of disks." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disks. Call ListNext() with this to fetch the next page of disks." + } + }, + "required": [ + "value" + ], + "description": "The List Disks operation response." + }, + "DiskSku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS", + "UltraSSD_LRS", + "Premium_ZRS", + "StandardSSD_ZRS" + ], + "x-ms-enum": { + "name": "DiskStorageAccountTypes", + "modelAsString": true, + "values": [ + { + "value": "Standard_LRS", + "description": "Standard HDD locally redundant storage. Best for backup, non-critical, and infrequent access." + }, + { + "value": "Premium_LRS", + "description": "Premium SSD locally redundant storage. Best for production and performance sensitive workloads." + }, + { + "value": "StandardSSD_LRS", + "description": "Standard SSD locally redundant storage. Best for web servers, lightly used enterprise applications and dev/test." + }, + { + "value": "UltraSSD_LRS", + "description": "Ultra SSD locally redundant storage. Best for IO-intensive workloads such as SAP HANA, top tier databases (for example, SQL, Oracle), and other transaction-heavy workloads." + }, + { + "value": "Premium_ZRS", + "description": "Premium SSD zone redundant storage. Best for the production workloads that need storage resiliency against zone failures." + }, + { + "value": "StandardSSD_ZRS", + "description": "Standard SSD zone redundant storage. Best for web servers, lightly used enterprise applications and dev/test that need storage resiliency against zone failures." + } + ] + }, + "description": "The sku name." + }, + "tier": { + "type": "string", + "readOnly": true, + "description": "The sku tier." + } + }, + "description": "The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS, or StandardSSD_ZRS." + }, + "DiskProperties": { + "properties": { + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the disk was created." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "purchasePlan": { + "$ref": "./diskRPCommon.json#/definitions/PurchasePlan", + "description": "Purchase plan information for the the image from which the OS disk was created. E.g. - {name: 2019-Datacenter, publisher: MicrosoftWindowsServer, product: WindowsServer}" + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities for the image from which the OS disk was created." + }, + "creationData": { + "$ref": "./diskRPCommon.json#/definitions/CreationData", + "description": "Disk source information. CreationData information cannot be changed after the disk has been created." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "diskSizeBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The size of the disk in bytes. This field is read only." + }, + "uniqueId": { + "type": "string", + "readOnly": true, + "description": "Unique Guid identifying the resource." + }, + "encryptionSettingsCollection": { + "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used for Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk provisioning state." + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int64", + "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskIOPSReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskState": { + "$ref": "./diskRPCommon.json#/definitions/DiskState", + "description": "The state of the disk." + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "maxShares": { + "type": "integer", + "format": "int32", + "description": "The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time." + }, + "shareInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ShareInfoElement" + }, + "x-ms-identifiers": [ + "vmUri" + ], + "description": "Details of the list of all VMs that have the disk attached. maxShares should be set to a value greater than one for disks to allow attaching them to multiple VMs." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "tier": { + "type": "string", + "description": "Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/. Does not apply to Ultra disks." + }, + "burstingEnabled": { + "type": "boolean", + "description": "Set to true to enable bursting beyond the provisioned performance target of the disk. Bursting is disabled by default. Does not apply to Ultra disks." + }, + "propertyUpdatesInProgress": { + "readOnly": true, + "$ref": "#/definitions/PropertyUpdatesInProgress", + "description": "Properties of the disk for which update is pending." + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a disk supports hibernation." + }, + "securityProfile": { + "$ref": "./diskRPCommon.json#/definitions/DiskSecurityProfile", + "description": "Contains the security related information for the resource." + }, + "completionPercent": { + "type": "number", + "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation." + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "dataAccessAuthMode": { + "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode" + } + }, + "required": [ + "creationData" + ], + "description": "Disk resource properties." + }, + "DiskUpdateProperties": { + "properties": { + "osType": { + "type": "string", + "description": "the Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "encryptionSettingsCollection": { + "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int64", + "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskIOPSReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "maxShares": { + "type": "integer", + "format": "int32", + "description": "The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time." + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "tier": { + "type": "string", + "description": "Performance tier of the disk (e.g, P4, S10) as described here: https://azure.microsoft.com/en-us/pricing/details/managed-disks/. Does not apply to Ultra disks." + }, + "burstingEnabled": { + "type": "boolean", + "description": "Set to true to enable bursting beyond the provisioned performance target of the disk. Bursting is disabled by default. Does not apply to Ultra disks." + }, + "purchasePlan": { + "$ref": "./diskRPCommon.json#/definitions/PurchasePlan", + "description": "Purchase plan information to be added on the OS disk" + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities to be added on the OS disk." + }, + "propertyUpdatesInProgress": { + "readOnly": true, + "$ref": "#/definitions/PropertyUpdatesInProgress", + "description": "Properties of the disk for which update is pending." + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a disk supports hibernation." + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "dataAccessAuthMode": { + "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode" + } + }, + "description": "Disk resource update properties." + }, + "ShareInfoElement": { + "properties": { + "vmUri": { + "readOnly": true, + "type": "string", + "description": "A relative URI containing the ID of the VM that has the disk attached." + } + } + }, + "PropertyUpdatesInProgress": { + "properties": { + "targetTier": { + "type": "string", + "description": "The target performance tier of the disk if a tier change operation is in progress." + } + }, + "description": "Properties of the disk for which update is pending." + } + }, + "parameters": { + "DiskNameParameter": { + "name": "diskName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed disk that is being created. The name can't be changed after the disk is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json new file mode 100644 index 000000000000..cc52d1a0b2de --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json @@ -0,0 +1,824 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}": { + "put": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_CreateOrUpdate", + "description": "Creates or updates a disk access resource", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "diskAccess", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskAccess" + }, + "description": "disk access object supplied in the body of the Put disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Create.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_Update", + "description": "Updates (patches) a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "diskAccess", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskAccessUpdate" + }, + "description": "disk access object supplied in the body of the Patch disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Update.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_Get", + "description": "Gets information about a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccess" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Get.json" + }, + "Get information about a disk access resource with private endpoints.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json" + } + } + }, + "delete": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_Delete", + "description": "Deletes a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk access resource is already deleted, this is an expected error code." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses": { + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_ListByResourceGroup", + "description": "Lists all the disk access resources under a resource group.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccessList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk access resources in a resource group.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskAccesses": { + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_List", + "description": "Lists all the disk access resources under a subscription.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskAccessList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk access resources in a subscription.": { + "$ref": "./examples/diskAccessExamples/DiskAccess_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}/privateLinkResources": { + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_GetPrivateLinkResources", + "description": "Gets the private link resources possible under disk access resource", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + }, + "x-ms-examples": { + "List all possible private link resources under disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "put": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_UpdateAPrivateEndpointConnection", + "description": "Approve or reject a private endpoint connection under disk access resource, this can't be used to create a new private endpoint connection.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "private endpoint connection object supplied in the body of the Put private endpoint connection operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Approve a Private Endpoint Connection under a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_GetAPrivateEndpointConnection", + "description": "Gets information about a private endpoint connection under a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a private endpoint connection under a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json" + } + } + }, + "delete": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_DeleteAPrivateEndpointConnection", + "description": "Deletes a private endpoint connection under a disk access resource.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the private endpoint connection is already deleted, this is an expected error code." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a private endpoint connection under a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskAccesses/{diskAccessName}/privateEndpointConnections": { + "get": { + "tags": [ + "DiskAccesses" + ], + "operationId": "DiskAccesses_ListPrivateEndpointConnections", + "description": "List information about private endpoint connections under a disk access resource", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskAccessNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a private endpoint connection under a disk access resource.": { + "$ref": "./examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DiskAccessProperties": { + "properties": { + "privateEndpointConnections": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "A readonly collection of private endpoint connections created on the disk. Currently only one endpoint connection is supported." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk access resource provisioning state." + }, + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the disk access was created." + } + } + }, + "DiskAccess": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskAccessProperties" + }, + "extendedLocation": { + "$ref": "../common.json#/definitions/ExtendedLocation", + "description": "The extended location where the disk access will be created. Extended location cannot be changed." + } + }, + "allOf": [ + { + "$ref": "../common.json#/definitions/Resource" + } + ], + "description": "disk access resource." + }, + "DiskAccessList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskAccess" + }, + "description": "A list of disk access resources." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disk access resources. Call ListNext() with this to fetch the next page of disk access resources." + } + }, + "required": [ + "value" + ], + "description": "The List disk access operation response." + }, + "DiskAccessUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "Used for updating a disk access resource." + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "id": { + "readOnly": true, + "type": "string", + "description": "private link resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "private link resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "private link resource type" + } + }, + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point.", + "readOnly": true + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between DiskAccess and Virtual Network." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "private endpoint connection Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "private endpoint connection name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "private endpoint connection type" + } + }, + "description": "The Private Endpoint Connection resource.", + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of snapshots. Call ListNext() with this to fetch the next page of snapshots." + } + }, + "description": "A list of private link resources" + } + }, + "parameters": { + "DiskAccessNameParameter": { + "name": "diskAccessName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the disk access resource that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json new file mode 100644 index 000000000000..47d2ce525bec --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json @@ -0,0 +1,587 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}": { + "put": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_CreateOrUpdate", + "description": "Creates or updates a disk encryption set", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "diskEncryptionSet", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + }, + "description": "disk encryption set object supplied in the body of the Put disk encryption set operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json" + }, + "Create a disk encryption set with key vault from a different subscription.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Update", + "description": "Updates (patches) a disk encryption set.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "diskEncryptionSet", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskEncryptionSetUpdate" + }, + "description": "disk encryption set object supplied in the body of the Patch disk encryption set operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update a disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json" + }, + "Update a disk encryption set with rotationToLatestKeyVersionEnabled set to true - Succeeded": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json" + }, + "Update a disk encryption set with rotationToLatestKeyVersionEnabled set to true - Updating": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Get", + "description": "Gets information about a disk encryption set.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json" + }, + "Get information about a disk encryption set when auto-key rotation failed.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json" + } + } + }, + "delete": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Delete", + "description": "Deletes a disk encryption set.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk encryption set is already deleted, this is an expected error code." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_ListByResourceGroup", + "description": "Lists all the disk encryption sets under a resource group.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSetList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk encryption sets in a resource group.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_List", + "description": "Lists all the disk encryption sets under a subscription.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSetList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk encryption sets in a subscription.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}/associatedResources": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_ListAssociatedResources", + "description": "Lists all resources that are encrypted with this disk encryption set.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceUriList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all resources that are encrypted with this disk encryption set.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "EncryptionSetProperties": { + "properties": { + "encryptionType": { + "$ref": "#/definitions/DiskEncryptionSetType" + }, + "activeKey": { + "$ref": "#/definitions/KeyForDiskEncryptionSet", + "description": "The key vault key which is currently used by this disk encryption set." + }, + "previousKeys": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/KeyForDiskEncryptionSet" + }, + "x-ms-identifiers": [ + "sourceVault/id" + ], + "description": "A readonly collection of key vault keys previously used by this disk encryption set while a key rotation is in progress. It will be empty if there is no ongoing key rotation." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk encryption set provisioning state." + }, + "rotationToLatestKeyVersionEnabled": { + "type": "boolean", + "description": "Set this flag to true to enable auto-updating of this disk encryption set to the latest key version." + }, + "lastKeyRotationTimestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the active key of this disk encryption set was updated." + }, + "autoKeyRotationError": { + "readOnly": true, + "$ref": "../common.json#/definitions/ApiError", + "description": "The error that was encountered during auto-key rotation. If an error is present, then auto-key rotation will not be attempted until the error on this disk encryption set is fixed." + } + } + }, + "EncryptionSetIdentity": { + "properties": { + "type": { + "type": "string", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "DiskEncryptionSetIdentityType", + "modelAsString": true + }, + "description": "The type of Managed Identity used by the DiskEncryptionSet. Only SystemAssigned is supported for new creations. Disk Encryption Sets can be updated with Identity type None during migration of subscription to a new Azure Active Directory tenant; it will cause the encrypted resources to lose access to the keys." + }, + "principalId": { + "readOnly": true, + "type": "string", + "description": "The object id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-identity-principal-id header in the PUT request if the resource has a systemAssigned(implicit) identity" + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-client-tenant-id header in the PUT request if the resource has a systemAssigned(implicit) identity" + } + }, + "description": "The managed identity for the disk encryption set. It should be given permission on the key vault before it can be used to encrypt disks." + }, + "DiskEncryptionSetType": { + "type": "string", + "description": "The type of key used to encrypt the data of the disk.", + "enum": [ + "EncryptionAtRestWithCustomerKey", + "EncryptionAtRestWithPlatformAndCustomerKeys", + "ConfidentialVmEncryptedWithCustomerKey" + ], + "x-ms-enum": { + "name": "DiskEncryptionSetType", + "modelAsString": true, + "values": [ + { + "value": "EncryptionAtRestWithCustomerKey", + "description": "Resource using diskEncryptionSet would be encrypted at rest with Customer managed key that can be changed and revoked by a customer." + }, + { + "value": "EncryptionAtRestWithPlatformAndCustomerKeys", + "description": "Resource using diskEncryptionSet would be encrypted at rest with two layers of encryption. One of the keys is Customer managed and the other key is Platform managed." + }, + { + "value": "ConfidentialVmEncryptedWithCustomerKey", + "description": "Confidential VM supported disk and VM guest state would be encrypted with customer managed key." + } + ] + } + }, + "KeyForDiskEncryptionSet": { + "properties": { + "sourceVault": { + "$ref": "./diskRPCommon.json#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret. This property is optional and cannot be used if the KeyVault subscription is not the same as the Disk Encryption Set subscription." + }, + "keyUrl": { + "type": "string", + "description": "Fully versioned Key Url pointing to a key in KeyVault. Version segment of the Url is required regardless of rotationToLatestKeyVersionEnabled value." + } + }, + "required": [ + "keyUrl" + ], + "description": "Key Vault Key Url to be used for server side encryption of Managed Disks and Snapshots" + }, + "DiskEncryptionSet": { + "properties": { + "identity": { + "$ref": "#/definitions/EncryptionSetIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EncryptionSetProperties" + } + }, + "allOf": [ + { + "$ref": "../common.json#/definitions/Resource" + } + ], + "description": "disk encryption set resource." + }, + "DiskEncryptionSetUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskEncryptionSetUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "identity": { + "$ref": "#/definitions/EncryptionSetIdentity" + } + }, + "description": "disk encryption set update resource." + }, + "DiskEncryptionSetUpdateProperties": { + "properties": { + "encryptionType": { + "$ref": "#/definitions/DiskEncryptionSetType" + }, + "activeKey": { + "$ref": "#/definitions/KeyForDiskEncryptionSet" + }, + "rotationToLatestKeyVersionEnabled": { + "type": "boolean", + "description": "Set this flag to true to enable auto-updating of this disk encryption set to the latest key version." + } + }, + "description": "disk encryption set resource update properties." + }, + "DiskEncryptionSetList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskEncryptionSet" + }, + "description": "A list of disk encryption sets." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disk encryption sets. Call ListNext() with this to fetch the next page of disk encryption sets." + } + }, + "required": [ + "value" + ], + "description": "The List disk encryption set operation response." + }, + "ResourceUriList": { + "properties": { + "value": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of IDs or Owner IDs of resources which are encrypted with the disk encryption set." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of encrypted resources. Call ListNext() with this to fetch the next page of encrypted resources." + } + }, + "required": [ + "value" + ], + "description": "The List resources which are encrypted with the disk encryption set." + } + }, + "parameters": { + "DiskEncryptionSetNameParameter": { + "name": "diskEncryptionSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the disk encryption set that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json new file mode 100644 index 000000000000..fa18406d56f5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json @@ -0,0 +1,557 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": {}, + "definitions": { + "EncryptionSettingsCollection": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Set this flag to true and provide DiskEncryptionKey and optional KeyEncryptionKey to enable encryption. Set this flag to false and remove DiskEncryptionKey and KeyEncryptionKey to disable encryption. If EncryptionSettings is null in the request object, the existing settings remain unchanged." + }, + "encryptionSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EncryptionSettingsElement" + }, + "x-ms-identifiers": [ + "diskEncryptionKey/sourceVault/id" + ], + "description": "A collection of encryption settings, one for each disk volume." + }, + "encryptionSettingsVersion": { + "type": "string", + "description": "Describes what type of encryption is used for the disks. Once this field is set, it cannot be overwritten. '1.0' corresponds to Azure Disk Encryption with AAD app.'1.1' corresponds to Azure Disk Encryption." + } + }, + "required": [ + "enabled" + ], + "description": "Encryption settings for disk or snapshot" + }, + "EncryptionSettingsElement": { + "properties": { + "diskEncryptionKey": { + "$ref": "#/definitions/KeyVaultAndSecretReference", + "description": "Key Vault Secret Url and vault id of the disk encryption key" + }, + "keyEncryptionKey": { + "$ref": "#/definitions/KeyVaultAndKeyReference", + "description": "Key Vault Key Url and vault id of the key encryption key. KeyEncryptionKey is optional and when provided is used to unwrap the disk encryption key." + } + }, + "description": "Encryption settings for one disk volume." + }, + "KeyVaultAndSecretReference": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret" + }, + "secretUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + } + }, + "required": [ + "secretUrl", + "sourceVault" + ], + "description": "Key Vault Secret Url and vault id of the encryption key " + }, + "KeyVaultAndKeyReference": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret" + }, + "keyUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + } + }, + "required": [ + "keyUrl", + "sourceVault" + ], + "description": "Key Vault Key Url and vault id of KeK, KeK is optional and when provided is used to unwrap the encryptionKey" + }, + "SourceVault": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "description": "The vault id is an Azure Resource Manager Resource id in the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}" + }, + "EncryptionType": { + "type": "string", + "description": "The type of key used to encrypt the data of the disk.", + "enum": [ + "EncryptionAtRestWithPlatformKey", + "EncryptionAtRestWithCustomerKey", + "EncryptionAtRestWithPlatformAndCustomerKeys" + ], + "x-ms-enum": { + "name": "EncryptionType", + "modelAsString": true, + "values": [ + { + "value": "EncryptionAtRestWithPlatformKey", + "description": "Disk is encrypted at rest with Platform managed key. It is the default encryption type. This is not a valid encryption type for disk encryption sets." + }, + { + "value": "EncryptionAtRestWithCustomerKey", + "description": "Disk is encrypted at rest with Customer managed key that can be changed and revoked by a customer." + }, + { + "value": "EncryptionAtRestWithPlatformAndCustomerKeys", + "description": "Disk is encrypted at rest with 2 layers of encryption. One of the keys is Customer managed and the other key is Platform managed." + } + ] + } + }, + "Encryption": { + "properties": { + "diskEncryptionSetId": { + "type": "string", + "description": "ResourceId of the disk encryption set to use for enabling encryption at rest." + }, + "type": { + "$ref": "#/definitions/EncryptionType" + } + }, + "description": "Encryption at rest settings for disk or snapshot" + }, + "NetworkAccessPolicy": { + "type": "string", + "description": "Policy for accessing the disk via network.", + "enum": [ + "AllowAll", + "AllowPrivate", + "DenyAll" + ], + "x-ms-enum": { + "name": "NetworkAccessPolicy", + "modelAsString": true, + "values": [ + { + "value": "AllowAll", + "description": "The disk can be exported or uploaded to from any network." + }, + { + "value": "AllowPrivate", + "description": "The disk can be exported or uploaded to using a DiskAccess resource's private endpoints." + }, + { + "value": "DenyAll", + "description": "The disk cannot be exported." + } + ] + } + }, + "PublicNetworkAccess": { + "type": "string", + "description": "Policy for controlling export on the disk.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "You can generate a SAS URI to access the underlying data of the disk publicly on the internet when NetworkAccessPolicy is set to AllowAll. You can access the data via the SAS URI only from your trusted Azure VNET when NetworkAccessPolicy is set to AllowPrivate." + }, + { + "value": "Disabled", + "description": "You cannot access the underlying data of the disk publicly on the internet even when NetworkAccessPolicy is set to AllowAll. You can access the data via the SAS URI only from your trusted Azure VNET when NetworkAccessPolicy is set to AllowPrivate." + } + ] + } + }, + "DiskState": { + "type": "string", + "description": "This enumerates the possible state of the disk.", + "readOnly": true, + "enum": [ + "Unattached", + "Attached", + "Reserved", + "Frozen", + "ActiveSAS", + "ActiveSASFrozen", + "ReadyToUpload", + "ActiveUpload" + ], + "x-ms-enum": { + "name": "DiskState", + "modelAsString": true, + "values": [ + { + "value": "Unattached", + "description": "The disk is not being used and can be attached to a VM." + }, + { + "value": "Attached", + "description": "The disk is currently attached to a running VM." + }, + { + "value": "Reserved", + "description": "The disk is attached to a stopped-deallocated VM." + }, + { + "value": "Frozen", + "description": "The disk is attached to a VM which is in hibernated state." + }, + { + "value": "ActiveSAS", + "description": "The disk currently has an Active SAS Uri associated with it." + }, + { + "value": "ActiveSASFrozen", + "description": "The disk is attached to a VM in hibernated state and has an active SAS URI associated with it." + }, + { + "value": "ReadyToUpload", + "description": "A disk is ready to be created by upload by requesting a write token." + }, + { + "value": "ActiveUpload", + "description": "A disk is created for upload and a write token has been issued for uploading to it." + } + ] + } + }, + "CreationData": { + "properties": { + "createOption": { + "type": "string", + "enum": [ + "Empty", + "Attach", + "FromImage", + "Import", + "Copy", + "Restore", + "Upload", + "CopyStart", + "ImportSecure", + "UploadPreparedSecure" + ], + "x-ms-enum": { + "name": "DiskCreateOption", + "modelAsString": true, + "values": [ + { + "value": "Empty", + "description": "Create an empty data disk of a size given by diskSizeGB." + }, + { + "value": "Attach", + "description": "Disk will be attached to a VM." + }, + { + "value": "FromImage", + "description": "Create a new disk from a platform image specified by the given imageReference or galleryImageReference." + }, + { + "value": "Import", + "description": "Create a disk by importing from a blob specified by a sourceUri in a storage account specified by storageAccountId." + }, + { + "value": "Copy", + "description": "Create a new disk or snapshot by copying from a disk or snapshot specified by the given sourceResourceId." + }, + { + "value": "Restore", + "description": "Create a new disk by copying from a backup recovery point." + }, + { + "value": "Upload", + "description": "Create a new disk by obtaining a write token and using it to directly upload the contents of the disk." + }, + { + "value": "CopyStart", + "description": "Create a new disk by using a deep copy process, where the resource creation is considered complete only after all data has been copied from the source." + }, + { + "value": "ImportSecure", + "description": "Similar to Import create option. Create a new Trusted Launch VM or Confidential VM supported disk by importing additional blob for VM guest state specified by securityDataUri in storage account specified by storageAccountId" + }, + { + "value": "UploadPreparedSecure", + "description": "Similar to Upload create option. Create a new Trusted Launch VM or Confidential VM supported disk and upload using write token in both disk and VM guest state" + } + ] + }, + "description": "This enumerates the possible sources of a disk's creation." + }, + "storageAccountId": { + "type": "string", + "description": "Required if createOption is Import. The Azure Resource Manager identifier of the storage account containing the blob to import as a disk." + }, + "imageReference": { + "$ref": "#/definitions/ImageDiskReference", + "description": "Disk source information for PIR or user images." + }, + "galleryImageReference": { + "$ref": "#/definitions/ImageDiskReference", + "description": "Required if creating from a Gallery Image. The id of the ImageDiskReference will be the ARM id of the shared galley image version from which to create a disk." + }, + "sourceUri": { + "type": "string", + "description": "If createOption is Import, this is the URI of a blob to be imported into a managed disk." + }, + "sourceResourceId": { + "type": "string", + "description": "If createOption is Copy, this is the ARM id of the source snapshot or disk." + }, + "sourceUniqueId": { + "readOnly": true, + "type": "string", + "description": "If this field is set, this is the unique id identifying the source of this resource." + }, + "uploadSizeBytes": { + "type": "integer", + "format": "int64", + "description": "If createOption is Upload, this is the size of the contents of the upload including the VHD footer. This value should be between 20972032 (20 MiB + 512 bytes for the VHD footer) and 35183298347520 bytes (32 TiB + 512 bytes for the VHD footer)." + }, + "logicalSectorSize": { + "type": "integer", + "format": "int32", + "description": "Logical sector size in bytes for Ultra disks. Supported values are 512 ad 4096. 4096 is the default." + }, + "securityDataUri": { + "type": "string", + "description": "If createOption is ImportSecure, this is the URI of a blob to be imported into VM guest state." + } + }, + "required": [ + "createOption" + ], + "description": "Data used when creating a disk." + }, + "ImageDiskReference": { + "properties": { + "id": { + "type": "string", + "description": "A relative uri containing either a Platform Image Repository or user image reference." + }, + "lun": { + "type": "integer", + "format": "int32", + "description": "If the disk is created from an image's data disk, this is an index that indicates which of the data disks in the image to use. For OS disks, this field is null." + } + }, + "required": [ + "id" + ], + "description": "The source image used for creating the disk." + }, + "PurchasePlan": { + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + }, + "promotionCode": { + "type": "string", + "description": "The Offer Promotion Code." + } + }, + "required": [ + "publisher", + "name", + "product" + ], + "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." + }, + "SupportedCapabilities": { + "type": "object", + "properties": { + "acceleratedNetwork": { + "type": "boolean", + "description": "True if the image from which the OS disk is created supports accelerated networking." + }, + "architecture": { + "type": "string", + "description": "CPU architecture supported by an OS disk.", + "enum": [ + "x64", + "Arm64" + ], + "x-ms-enum": { + "name": "Architecture", + "modelAsString": true + } + } + }, + "description": "List of supported capabilities persisted on the disk resource for VM use." + }, + "DiskSecurityType": { + "type": "string", + "description": "Specifies the SecurityType of the VM. Applicable for OS disks only.", + "enum": [ + "TrustedLaunch", + "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey", + "ConfidentialVM_DiskEncryptedWithPlatformKey", + "ConfidentialVM_DiskEncryptedWithCustomerKey" + ], + "x-ms-enum": { + "name": "DiskSecurityTypes", + "modelAsString": true, + "values": [ + { + "value": "TrustedLaunch", + "description": "Trusted Launch provides security features such as secure boot and virtual Trusted Platform Module (vTPM)" + }, + { + "value": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey", + "description": "Indicates Confidential VM disk with only VM guest state encrypted" + }, + { + "value": "ConfidentialVM_DiskEncryptedWithPlatformKey", + "description": "Indicates Confidential VM disk with both OS disk and VM guest state encrypted with a platform managed key" + }, + { + "value": "ConfidentialVM_DiskEncryptedWithCustomerKey", + "description": "Indicates Confidential VM disk with both OS disk and VM guest state encrypted with a customer managed key" + } + ] + } + }, + "DiskSecurityProfile": { + "properties": { + "securityType": { + "$ref": "#/definitions/DiskSecurityType" + }, + "secureVMDiskEncryptionSetId": { + "type": "string", + "description": "ResourceId of the disk encryption set associated to Confidential VM supported disk encrypted with customer managed key" + } + }, + "description": "Contains the security related information for the resource." + }, + "GrantAccessData": { + "properties": { + "access": { + "type": "string", + "enum": [ + "None", + "Read", + "Write" + ], + "x-ms-enum": { + "name": "AccessLevel", + "modelAsString": true + } + }, + "durationInSeconds": { + "type": "integer", + "format": "int32", + "description": "Time duration in seconds until the SAS access expires." + }, + "getSecureVMGuestStateSAS": { + "type": "boolean", + "description": "Set this flag to true to get additional SAS for VM guest state" + } + }, + "required": [ + "access", + "durationInSeconds" + ], + "description": "Data used for requesting a SAS." + }, + "AccessUri": { + "properties": { + "accessSAS": { + "readOnly": true, + "type": "string", + "description": "A SAS uri for accessing a disk." + }, + "securityDataAccessSAS": { + "readOnly": true, + "type": "string", + "description": "A SAS uri for accessing a VM guest state." + } + }, + "description": "A disk access SAS uri." + }, + "DataAccessAuthMode": { + "type": "string", + "description": "Additional authentication requirements when exporting or uploading to a disk or snapshot.", + "enum": [ + "AzureActiveDirectory", + "None" + ], + "x-ms-enum": { + "name": "DataAccessAuthMode", + "modelAsString": true, + "values": [ + { + "value": "AzureActiveDirectory", + "description": "When export/upload URL is used, the system checks if the user has an identity in Azure Active Directory and has necessary permissions to export/upload the data. Please refer to aka.ms/DisksAzureADAuth." + }, + { + "value": "None", + "description": "No additional authentication would be performed when accessing export/upload URL." + } + ] + } + } + }, + "parameters": { + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json new file mode 100644 index 000000000000..566e09a87448 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json @@ -0,0 +1,426 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}": { + "get": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_Get", + "description": "Get disk restorePoint resource", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "#/parameters/DiskRestorePointNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskRestorePoint" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get an incremental disk restorePoint resource.": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_Get.json" + }, + "Get an incremental disk restorePoint when source resource is from a different region": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints": { + "get": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_ListByRestorePoint", + "description": "Lists diskRestorePoints under a vmRestorePoint.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskRestorePointList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get an incremental disk restorePoint resource.": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}/beginGetAccess": { + "post": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_GrantAccess", + "description": "Grants access to a diskRestorePoint.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "#/parameters/DiskRestorePointNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "./diskRPCommon.json#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./diskRPCommon.json#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Grants access to a diskRestorePoint.": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}/restorePoints/{vmRestorePointName}/diskRestorePoints/{diskRestorePointName}/endGetAccess": { + "post": { + "tags": [ + "IncrementalRestorePoints" + ], + "operationId": "DiskRestorePoint_RevokeAccess", + "description": "Revokes access to a diskRestorePoint.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RestorePointCollectionNameParameter" + }, + { + "$ref": "#/parameters/VmRestorePointNameParameter" + }, + { + "$ref": "#/parameters/DiskRestorePointNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../common.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Revokes access to a diskRestorePoint.": { + "$ref": "./examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json" + } + } + } + } + }, + "definitions": { + "DiskRestorePoint": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskRestorePointProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "description": "Properties of disk restore point" + }, + "DiskRestorePointList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskRestorePoint" + }, + "description": "A list of disk restore points." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disk restore points. Call ListNext() with this to fetch the next page of disk restore points." + } + }, + "required": [ + "value" + ], + "description": "The List Disk Restore Points operation response." + }, + "DiskRestorePointProperties": { + "properties": { + "timeCreated": { + "type": "string", + "format": "date-time", + "description": "The timestamp of restorePoint creation", + "readOnly": true + }, + "sourceResourceId": { + "type": "string", + "description": "arm id of source disk or source disk restore point.", + "readOnly": true + }, + "osType": { + "type": "string", + "readOnly": true, + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "purchasePlan": { + "$ref": "./diskRPCommon.json#/definitions/PurchasePlan", + "description": "Purchase plan information for the the image from which the OS disk was created." + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities for the image from which the OS disk was created." + }, + "familyId": { + "type": "string", + "description": "id of the backing snapshot's MIS family", + "readOnly": true + }, + "sourceUniqueId": { + "type": "string", + "description": "unique incarnation id of the source disk", + "readOnly": true + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys.", + "readOnly": true + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a disk supports hibernation." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "completionPercent": { + "type": "number", + "description": "Percentage complete for the background copy of disk restore point when source resource is from a different region." + }, + "replicationState": { + "type": "string", + "description": "Replication state of disk restore point when source resource is from a different region.", + "readOnly": true + }, + "sourceResourceLocation": { + "type": "string", + "description": "Location of source disk or source disk restore point when source resource is from a different region.", + "readOnly": true + } + }, + "description": "Properties of an incremental disk restore point" + }, + "ProxyOnlyResource": { + "description": "The ProxyOnly Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + } + } + } + }, + "parameters": { + "DiskRestorePointNameParameter": { + "name": "diskRestorePointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the disk restore point created.", + "x-ms-parameter-location": "method" + }, + "RestorePointCollectionNameParameter": { + "name": "restorePointCollectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the restore point collection that the disk restore point belongs.", + "x-ms-parameter-location": "method" + }, + "VmRestorePointNameParameter": { + "name": "vmRestorePointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vm restore point that the disk disk restore point belongs.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json new file mode 100644 index 000000000000..c6cd51cd709d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Approve.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess", + "privateEndpointConnectionName": "myPrivateEndpointConnection", + "privateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approving myPrivateEndpointConnection" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myPrivateEndpointConenction", + "type": "Microsoft.Compute/diskAccesses/privateEndpointConnections", + "properties": { + "provisioningState": "Updating", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Approving myPrivateEndpointConnection", + "status": "Approved" + } + } + } + }, + "200": { + "body": { + "name": "myPrivateEndpointConnectionName", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnectionName", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Approving myPrivateEndpointConnection", + "status": "Approved" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json new file mode 100644 index 000000000000..09b0aa6facff --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskAccessName": "myDiskAccess", + "privateEndpointConnectionName": "myPrivateEndpointConnection", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json new file mode 100644 index 000000000000..63e33cbe21fe --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess", + "privateEndpointConnectionName": "myPrivateEndpointConnection" + }, + "responses": { + "200": { + "body": { + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnection", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json new file mode 100644 index 000000000000..81c0a5c67951 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateEndpointConnection_ListByDiskAccess.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myPrivateEndpointConnection", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json new file mode 100644 index 000000000000..519ee54d4c55 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccessPrivateLinkResources_Get.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateLinkResources/disks", + "name": "disks", + "type": "Microsoft.Compute/diskAccesses/privateLinkResources", + "properties": { + "groupId": "disks", + "requiredMembers": [ + "diskAccess_1" + ], + "requiredZoneNames": [ + "privatelink.blob.core.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Create.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Create.json new file mode 100644 index 000000000000..79c51eb4554b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Create.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess", + "diskAccess": { + "location": "West US" + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskAccess", + "location": "West US", + "type": "Microsoft.Compute/diskAccesses" + } + }, + "200": { + "body": { + "name": "myDiskAccess", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "type": "Microsoft.Compute/diskAccesses", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Delete.json new file mode 100644 index 000000000000..baf843c305cc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskAccessName": "myDiskAccess", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get.json new file mode 100644 index 000000000000..e87777a78dc4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00" + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "name": "myDiskAccess" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json new file mode 100644 index 000000000000..202bbe997c88 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Get_WithPrivateEndpoints.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00", + "privateEndpointConnections": [ + { + "name": "myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess/privateEndpoinConnections/myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + ] + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "name": "myDiskAccess" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json new file mode 100644 index 000000000000..f71dcf7a486c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListByResourceGroup.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00" + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "name": "myDiskAccess" + }, + { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00", + "privateEndpointConnections": [ + { + "name": "myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2/privateEndpoinConnections/myDiskAccess2.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint2" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + ] + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2", + "name": "myDiskAccess2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskAccesses?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListBySubscription.json new file mode 100644 index 000000000000..efcd8ec181ab --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_ListBySubscription.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00" + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "name": "myDiskAccess" + }, + { + "properties": { + "provisioningState": "Succeeded", + "timeCreated": "2020-05-01T04:41:35.079872+00:00", + "privateEndpointConnections": [ + { + "name": "myDiskAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "type": "Microsoft.Compute/diskAccesses/PrivateEndpointConnections", + "id": "/subscriptions/{subscription-id}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2/privateEndpoinConnections/myDiskAccess2.d4914cfa-6bc2-4049-a57c-3d1f622d8eef", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subscription-id}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint2" + }, + "privateLinkServiceConnectionState": { + "actionsRequired": "None", + "description": "Auto-Approved", + "status": "Approved" + } + } + } + ] + }, + "type": "Microsoft.Compute/diskAccesses", + "location": "westus", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess2", + "name": "myDiskAccess2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskAccesses?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Update.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Update.json new file mode 100644 index 000000000000..68a5d2a57af2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskAccessExamples/DiskAccess_Update.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskAccessName": "myDiskAccess", + "diskAccess": { + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess?api-version=2021-04-01" + }, + "body": { + "name": "myDiskAccess", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "type": "Microsoft.Compute/diskAccesses", + "location": "West US", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + } + } + }, + "200": { + "body": { + "name": "myDiskAccess", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourcegroup/providers/Microsoft.Compute/diskAccesses/myDiskAccess", + "type": "Microsoft.Compute/diskAccesses", + "location": "West US", + "tags": { + "department": "Development", + "project": "PrivateEndpoints" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json new file mode 100644 index 000000000000..cc9a6c32a7e2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey" + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json new file mode 100644 index 000000000000..8aca5067e553 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey" + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json new file mode 100644 index 000000000000..e2dc9e77807d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskEncryptionSetName": "myDiskEncryptionSet", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json new file mode 100644 index 000000000000..2ac8960a3232 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet" + }, + "responses": { + "200": { + "body": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json new file mode 100644 index 000000000000..65da960a5243 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Get_WithAutoKeyRotationError.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet" + }, + "responses": { + "200": { + "body": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "rotationToLatestKeyVersionEnabled": true, + "provisioningState": "Succeeded", + "autoKeyRotationError": { + "code": "ManagedServiceIdentityNotFound", + "message": "Auto-key rotation was disabled as managed service identity associated with DiskEncryptionSet 'myDiskEncryptionSet' was not found. Please update the resource with correct identity to re-enable auto-key rotation." + } + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json new file mode 100644 index 000000000000..0fbad7e36705 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListAssociatedResources.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet" + }, + "responses": { + "200": { + "body": { + "value": [ + "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}/associatedResources?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json new file mode 100644 index 000000000000..058529291380 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListByResourceGroup.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + }, + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault2" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet2", + "name": "myDiskEncryptionSet2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json new file mode 100644 index 000000000000..c93080183767 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_ListBySubscription.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + }, + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/mySecondResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault2" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/mySecondResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet2", + "name": "myDiskEncryptionSet2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json new file mode 100644 index 000000000000..3c93bf0fb87a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/keyName/keyVersion" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey" + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet?api-version=2021-04-01" + }, + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/keyName/keyVersion" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/keyName/keyVersion" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [], + "lastKeyRotationTimestamp": "2021-04-01T04:41:35.079872+00:00" + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json new file mode 100644 index 000000000000..0d63e6c85469 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabled.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "rotationToLatestKeyVersionEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet?api-version=2021-04-01" + }, + "body": { + "name": "myDiskEncryptionSet", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/KeyVersion2" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "rotationToLatestKeyVersionEnabled": true, + "provisioningState": "Succeeded", + "lastKeyRotationTimestamp": "2021-04-01T04:41:35.079872+00:00" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json new file mode 100644 index 000000000000..f098e0677aa6 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Update_WithRotationToLatestKeyVersionEnabledInProgress.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "rotationToLatestKeyVersionEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet?api-version=2021-04-01" + }, + "body": { + "name": "myDiskEncryptionSet", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/myDiskEncryptionSet", + "type": "Microsoft.Compute/diskEncryptionSets", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion2" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "rotationToLatestKeyVersionEnabled": true, + "previousKeys": [ + { + "keyUrl": "https://myvaultdifferentsub.vault-int.azure-int.net/keys/keyName/keyVersion1" + } + ], + "provisioningState": "Updating", + "lastKeyRotationTimestamp": "2021-04-01T04:41:35.079872+00:00" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess.json new file mode 100644 index 000000000000..18fc4ec647ed --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskName": "myDisk", + "api-version": "2022-03-02", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300 + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json new file mode 100644 index 000000000000..f62dcb7217e8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_BeginGetAccess_WithVMGuestState.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskName": "myDisk", + "api-version": "2022-03-02", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300, + "getSecureVMGuestStateSAS": true + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r", + "securityDataAccessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/b9bf5824-6122-49e0-ba22-042f76ccd8a1_vmgs?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json new file mode 100644 index 000000000000..e2cdac0c6349 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_CreateOrUpdate_BurstingEnabled.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "diskSizeGB": 1024, + "burstingEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 1024, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 1024, + "burstingEnabled": true, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json new file mode 100644 index 000000000000..9410d8658767 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByCopyingASnapshot.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json new file mode 100644 index 000000000000..c238abb14878 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromADifferentSubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json new file mode 100644 index 000000000000..d46d27ec8f3e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ByImportingBlobFromTheSameSubscription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json new file mode 100644 index 000000000000..218c9fff18b5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_DiskEncryptedWithCustomerKey", + "secureVMDiskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_DiskEncryptedWithCustomerKey", + "secureVMDiskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_DiskEncryptedWithCustomerKey", + "secureVMDiskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_Empty.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_Empty.json new file mode 100644 index 000000000000..f7157ab4c739 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_Empty.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAPlatformImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAPlatformImage.json new file mode 100644 index 000000000000..8489ab63ab8c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAPlatformImage.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "{sku}", + "publisher": "{publisher}", + "product": "{offer}" + }, + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + }, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "{sku}", + "publisher": "{publisher}", + "product": "{offer}" + }, + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/westus/Publishers/{publisher}/ArtifactTypes/VMImage/Offers/{offer}/Skus/{sku}/Versions/1.0.0" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json new file mode 100644 index 000000000000..0e0204eaa996 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnExistingManagedDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk2", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk2" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk2" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromImportSecure.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromImportSecure.json new file mode 100644 index 000000000000..9f9406656782 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromImportSecure.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey" + }, + "creationData": { + "createOption": "ImportSecure", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "securityDataUri": "https://mystorageaccount.blob.core.windows.net/osimages/vmgs.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey" + }, + "creationData": { + "createOption": "ImportSecure", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "securityDataUri": "https://mystorageaccount.blob.core.windows.net/osimages/vmgs.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "securityProfile": { + "securityType": "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey" + }, + "creationData": { + "createOption": "ImportSecure", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "securityDataUri": "https://mystorageaccount.blob.core.windows.net/osimages/vmgs.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json new file mode 100644 index 000000000000..42c11a139813 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromUploadPreparedSecure.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "UploadPreparedSecure", + "uploadSizeBytes": 10737418752 + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "UploadPreparedSecure", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "UploadPreparedSecure", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_InExtendedLocation.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_InExtendedLocation.json new file mode 100644 index 000000000000..7809e6bea569 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_InExtendedLocation.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "extendedLocation": { + "type": "EdgeZone", + "name": "{edge-zone-id}" + }, + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "extendedLocation": { + "type": "EdgeZone", + "name": "{edge-zone-id}" + } + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "extendedLocation": { + "type": "EdgeZone", + "name": "{edge-zone-id}" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_UploadDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_UploadDisk.json new file mode 100644 index 000000000000..d1343973551d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_UploadDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json new file mode 100644 index 000000000000..b75b887df49b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDataAccessAuthMode.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "dataAccessAuthMode": "AzureActiveDirectory" + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Succeeded", + "dataAccessAuthMode": "AzureActiveDirectory" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskAccess.json new file mode 100644 index 000000000000..6505d0fa0096 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskAccess.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "networkAccessPolicy": "AllowPrivate", + "diskAccessId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/{existing-diskAccess-name}" + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Succeeded", + "networkAccessPolicy": "AllowPrivate", + "diskAccessId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskAccesses/{existing-diskAccess-name}", + "publicNetworkAccess": "Enabled" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json new file mode 100644 index 000000000000..9468632fbe1a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithDiskEncryptionSet.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "encryption": { + "diskEncryptionSetId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Succeeded", + "encryption": { + "diskEncryptionSetId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json new file mode 100644 index 000000000000..3a070a17d271 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithLogicalSectorSize.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "sku": { + "name": "UltraSSD_LRS" + }, + "properties": { + "creationData": { + "createOption": "Empty", + "logicalSectorSize": 512 + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty", + "logicalSectorSize": 512 + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "sku": { + "name": "UltraSSD_LRS", + "tier": "Ultra" + } + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty", + "logicalSectorSize": 512 + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "sku": { + "name": "UltraSSD_LRS", + "tier": "Ultra" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json new file mode 100644 index 000000000000..bc8104da54ab --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "sku": { + "name": "Premium_ZRS" + }, + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "sku": { + "name": "Premium_ZRS", + "tier": "Premium" + } + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk", + "sku": { + "name": "Premium_ZRS", + "tier": "Premium" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSecurityProfile.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSecurityProfile.json new file mode 100644 index 000000000000..c4fc34abd215 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithSecurityProfile.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "North Central US", + "properties": { + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "North Central US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "North Central US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Delete.json new file mode 100644 index 000000000000..87c48164eb28 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskName": "myDisk", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_EndGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_EndGetAccess.json new file mode 100644 index 000000000000..a9f420172620 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_EndGetAccess.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskName": "myDisk", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Get.json new file mode 100644 index 000000000000..65bbd77e5ec4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Get.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myManagedDisk" + }, + "responses": { + "200": { + "body": { + "managedBy": "/subscriptions/123caaa-123v-v211-a49f-f88ccac5bf88/resourceGroups/ResourceGroupName/providers/Microsoft.Compute/virtualMachines/TestVM414689371c88843d65ec", + "sku": { + "name": "Standard_LRS" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "test_sku", + "publisher": "test_test_pmc2pc1", + "product": "marketplace_vm_test" + }, + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "supportsHibernation": true, + "securityProfile": { + "securityType": "TrustedLaunch" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 10, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.079872+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListByResourceGroup.json new file mode 100644 index 000000000000..57642890747a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListByResourceGroup.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.872242+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk2" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.3973934+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk3" + } + ], + "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListBySubscription.json new file mode 100644 index 000000000000..e2af47dfe0eb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_ListBySubscription.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1", + "name": "myManagedDisk1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.872242+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2", + "name": "myManagedDisk2" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.3973934+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk3", + "name": "myManagedDisk3" + } + ], + "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json new file mode 100644 index 000000000000..808f8b01c305 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddAcceleratedNetworking.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "supportedCapabilities": { + "acceleratedNetwork": false + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": false + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": false + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddPurchasePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddPurchasePlan.json new file mode 100644 index 000000000000..7983218bdf94 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddPurchasePlan.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "purchasePlan": { + "name": "myPurchasePlanName", + "publisher": "myPurchasePlanPublisher", + "product": "myPurchasePlanProduct", + "promotionCode": "myPurchasePlanPromotionCode" + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "myPurchasePlanName", + "publisher": "myPurchasePlanPublisher", + "product": "myPurchasePlanProduct", + "promotionCode": "myPurchasePlanPromotionCode" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "myPurchasePlanName", + "publisher": "myPurchasePlanPublisher", + "product": "myPurchasePlanProduct", + "promotionCode": "myPurchasePlanPromotionCode" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddSupportsHibernation.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddSupportsHibernation.json new file mode 100644 index 000000000000..4ba654f27b1b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_AddSupportsHibernation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "supportsHibernation": true + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportsHibernation": true, + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "diskSizeGB": 127, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportsHibernation": true, + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "diskSizeGB": 127, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ChangeTier.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ChangeTier.json new file mode 100644 index 000000000000..8d78913903cd --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ChangeTier.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "tier": "P30" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "provisioningState": "Updating", + "tier": "P10", + "propertyUpdatesInProgress": { + "targetTier": "P30" + } + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "provisioningState": "Succeeded", + "tier": "P30" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_DisableBursting.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_DisableBursting.json new file mode 100644 index 000000000000..5dbc32fb629a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_DisableBursting.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "burstingEnabled": false + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_RemoveDiskAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_RemoveDiskAccess.json new file mode 100644 index 000000000000..f5ecfdeeaa57 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_RemoveDiskAccess.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "networkAccessPolicy": "AllowAll" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating", + "networkAccessPolicy": "AllowAll" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Succeeded", + "networkAccessPolicy": "AllowAll" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ToAddArchitecture.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ToAddArchitecture.json new file mode 100644 index 000000000000..15a5c3ce02df --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Update_ToAddArchitecture.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "properties": { + "supportedCapabilities": { + "architecture": "Arm64" + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-12-01" + }, + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "architecture": "Arm64" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "westus", + "sku": { + "name": "Standard_LRS", + "tier": "Standard" + }, + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "architecture": "Arm64" + }, + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscription-id}/Providers/Microsoft.Compute/Locations/westus/Publishers/test_test_pmc2pc1/ArtifactTypes/VMImage/Offers/marketplace_vm_test/Skus/test_sku/Versions/1.0.0" + } + }, + "diskSizeGB": 127, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json new file mode 100644 index 000000000000..f011b1c59b97 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_BeginGetAccess.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2022-03-02", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300 + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json new file mode 100644 index 000000000000..50e399fef753 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_EndGetAccess.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get.json new file mode 100644 index 000000000000..8da4a20b39de --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpc/restorePoints/vmrp/diskRestorePoints/TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "name": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "properties": { + "timeCreated": "2020-09-16T04:41:35.079872+00:00", + "sourceResourceId": "/subscriptions/d2260d06-e00d-422f-8b63-93df551a59ae/resourceGroups/rg0680fb0c-89f1-41b4-96c0-35733a181558/providers/Microsoft.Compute/disks/TestDisk45ceb03433006d1baee0", + "osType": "Windows", + "hyperVGeneration": "V1", + "familyId": "996bf3ce-b6ff-4e86-9db6-dc27ea06cea5", + "sourceUniqueId": "48e058b1-7eea-4968-b532-10a8a1130c13", + "networkAccessPolicy": "AllowAll", + "publicNetworkAccess": "Disabled" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json new file mode 100644 index 000000000000..88ac8607f2ca --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_Get_WhenSourceResourceIsFromDifferentRegion.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "diskRestorePointName": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpc/restorePoints/vmrp/diskRestorePoints/TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "name": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "properties": { + "timeCreated": "2020-09-16T04:41:35.079872+00:00", + "sourceResourceId": "/subscriptions/d2260d06-e00d-422f-8b63-93df551a59ae/resourceGroups/rg0680fb0c-89f1-41b4-96c0-35733a181558/providers/Microsoft.Compute/disks/TestDisk45ceb03433006d1baee0", + "osType": "Windows", + "hyperVGeneration": "V1", + "familyId": "996bf3ce-b6ff-4e86-9db6-dc27ea06cea5", + "sourceUniqueId": "48e058b1-7eea-4968-b532-10a8a1130c13", + "networkAccessPolicy": "AllowAll", + "publicNetworkAccess": "Disabled", + "replicationState": "Succeeded", + "completionPercent": 100, + "sourceResourceLocation": "eastus2" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json new file mode 100644 index 000000000000..7495117e35fc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskRestorePointExamples/DiskRestorePoint_ListByVmRestorePoint.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "restorePointCollectionName": "rpc", + "vmRestorePointName": "vmrp", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/restorePointCollections/rpc/restorePoints/vmrp/diskRestorePoints/TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "name": "TestDisk45ceb03433006d1baee0_b70cd924-3362-4a80-93c2-9415eaa12745", + "properties": { + "timeCreated": "2020-09-16T04:41:35.079872+00:00", + "sourceResourceId": "/subscriptions/d2260d06-e00d-422f-8b63-93df551a59ae/resourceGroups/rg0680fb0c-89f1-41b4-96c0-35733a181558/providers/Microsoft.Compute/disks/TestDisk45ceb03433006d1baee0", + "osType": "Windows", + "hyperVGeneration": "V1", + "familyId": "996bf3ce-b6ff-4e86-9db6-dc27ea06cea5", + "sourceUniqueId": "48e058b1-7eea-4968-b532-10a8a1130c13", + "networkAccessPolicy": "AllowAll", + "publicNetworkAccess": "Disabled" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_BeginGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_BeginGetAccess.json new file mode 100644 index 000000000000..e1fb2b64eeea --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_BeginGetAccess.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02", + "grantAccessData": { + "access": "Read", + "durationInSeconds": 300 + } + }, + "responses": { + "200": { + "body": { + "accessSAS": "https://md-gpvmcxzlzxgd.partition.blob.storage.azure.net/xx3cqcx53f0v/abcd?sv=2014-02-14&sr=b&sk=key1&sig=XXX&st=2021-05-24T18:02:34Z&se=2021-05-24T18:19:14Z&sp=r" + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json new file mode 100644 index 000000000000..1dd45c7fe1bb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot1", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json new file mode 100644 index 000000000000..ef0040bdc00d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot1", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json new file mode 100644 index 000000000000..b358fee171e8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot2", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "200": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json new file mode 100644 index 000000000000..0fe0c649d353 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot2", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "CopyStart", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "CopyStart", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "200": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "CopyStart", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Delete.json new file mode 100644 index 000000000000..a45ca19b39db --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_EndGetAccess.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_EndGetAccess.json new file mode 100644 index 000000000000..76e37d04d44e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_EndGetAccess.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Get.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Get.json new file mode 100644 index 000000000000..263ae5d5db88 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Get.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "snapshotName": "mySnapshot" + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "purchasePlan": { + "name": "test_sku", + "publisher": "test_test_pmc2pc1", + "product": "marketplace_vm_test" + }, + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "supportsHibernation": true, + "creationData": { + "createOption": "Copy", + "sourceResourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk", + "sourceUniqueId": "d633885d-d102-4481-901e-5b2413d1a7be" + }, + "diskSizeGB": 100, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.079872+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot", + "name": "mySnapshot" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListByResourceGroup.json new file mode 100644 index 000000000000..96cf8ffdf369 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListByResourceGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot", + "name": "mySnapshot" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListBySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListBySubscription.json new file mode 100644 index 000000000000..cbc2c8425cae --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_ListBySubscription.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2022-03-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:47:30.6630569+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1", + "name": "mySnapshot1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:47:30.3247198+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2", + "name": "mySnapshot2" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update.json new file mode 100644 index 000000000000..dc06103d0b39 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02", + "snapshot": { + "properties": { + "diskSizeGB": 20 + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "diskSizeGB": 20, + "provisioningState": "Updating" + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + }, + "location": "West US", + "name": "mySnapshot" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "diskSizeGB": 20, + "provisioningState": "Succeeded" + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + }, + "location": "West US", + "name": "mySnapshot" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json new file mode 100644 index 000000000000..b3e110dd2224 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "snapshotName": "mySnapshot", + "api-version": "2022-03-02", + "snapshot": { + "properties": { + "diskSizeGB": 20, + "supportedCapabilities": { + "acceleratedNetwork": false + } + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot?api-version=2021-04-01" + }, + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "supportedCapabilities": { + "acceleratedNetwork": false + }, + "diskSizeGB": 20, + "provisioningState": "Updating" + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + }, + "location": "West US", + "name": "mySnapshot" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "supportedCapabilities": { + "acceleratedNetwork": false + }, + "diskSizeGB": 20, + "provisioningState": "Succeeded" + }, + "tags": { + "department": "Development", + "project": "UpdateSnapshots" + }, + "location": "West US", + "name": "mySnapshot" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json new file mode 100644 index 000000000000..b09577c194d5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json @@ -0,0 +1,661 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}": { + "put": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_CreateOrUpdate", + "description": "Creates or updates a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "snapshot", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Snapshot" + }, + "description": "Snapshot object supplied in the body of the Put disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Create a snapshot from an existing snapshot in the same or a different subscription.": { + "$ref": "./examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshot.json" + }, + "Create a snapshot by importing an unmanaged blob from the same subscription.": { + "$ref": "./examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromTheSameSubscription.json" + }, + "Create a snapshot by importing an unmanaged blob from a different subscription.": { + "$ref": "./examples/snapshotExamples/Snapshot_Create_ByImportingAnUnmanagedBlobFromADifferentSubscription.json" + }, + "Create a snapshot from an existing snapshot in the same or a different subscription in a different region.": { + "$ref": "./examples/snapshotExamples/Snapshot_Create_FromAnExistingSnapshotInDifferentRegion.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Update", + "description": "Updates (patches) a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "snapshot", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotUpdate" + }, + "description": "Snapshot object supplied in the body of the Patch snapshot operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Update a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_Update.json" + }, + "Update a snapshot with accelerated networking.": { + "$ref": "./examples/snapshotExamples/Snapshot_Update_WithAcceleratedNetwork.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Get", + "description": "Gets information about a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Get information about a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_Get.json" + } + } + }, + "delete": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Delete", + "description": "Deletes a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the snapshot is deleted, this is an expected error code." + } + }, + "x-ms-examples": { + "Delete a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_ListByResourceGroup", + "description": "Lists snapshots under a resource group.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotList" + } + } + }, + "x-ms-examples": { + "List all snapshots in a resource group.": { + "$ref": "./examples/snapshotExamples/Snapshot_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_List", + "description": "Lists snapshots under a subscription.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotList" + } + } + }, + "x-ms-examples": { + "List all snapshots in a subscription.": { + "$ref": "./examples/snapshotExamples/Snapshot_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/beginGetAccess": { + "post": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_GrantAccess", + "description": "Grants access to a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "./diskRPCommon.json#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get snapshot access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "./diskRPCommon.json#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Get a sas on a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_BeginGetAccess.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/endGetAccess": { + "post": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_RevokeAccess", + "description": "Revokes access to a snapshot.", + "parameters": [ + { + "$ref": "../common.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./diskRPCommon.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "../common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Revoke access to a snapshot.": { + "$ref": "./examples/snapshotExamples/Snapshot_EndGetAccess.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "Snapshot": { + "properties": { + "managedBy": { + "readOnly": true, + "type": "string", + "description": "Unused. Always Null." + }, + "sku": { + "$ref": "#/definitions/SnapshotSku" + }, + "extendedLocation": { + "$ref": "../common.json#/definitions/ExtendedLocation", + "description": "The extended location where the snapshot will be created. Extended location cannot be changed." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnapshotProperties" + } + }, + "allOf": [ + { + "$ref": "../common.json#/definitions/Resource" + } + ], + "description": "Snapshot resource." + }, + "SnapshotUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnapshotUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "sku": { + "$ref": "#/definitions/SnapshotSku" + } + }, + "description": "Snapshot update resource." + }, + "SnapshotList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Snapshot" + }, + "description": "A list of snapshots." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of snapshots. Call ListNext() with this to fetch the next page of snapshots." + } + }, + "required": [ + "value" + ], + "description": "The List Snapshots operation response." + }, + "SnapshotSku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "Standard_ZRS" + ], + "x-ms-enum": { + "name": "SnapshotStorageAccountTypes", + "modelAsString": true, + "values": [ + { + "value": "Standard_LRS", + "description": "Standard HDD locally redundant storage" + }, + { + "value": "Premium_LRS", + "description": "Premium SSD locally redundant storage" + }, + { + "value": "Standard_ZRS", + "description": "Standard zone redundant storage" + } + ] + }, + "description": "The sku name." + }, + "tier": { + "type": "string", + "readOnly": true, + "description": "The sku tier." + } + }, + "description": "The snapshots sku name. Can be Standard_LRS, Premium_LRS, or Standard_ZRS. This is an optional parameter for incremental snapshot and the default behavior is the SKU will be set to the same sku as the previous snapshot" + }, + "SnapshotProperties": { + "properties": { + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the snapshot was created." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "purchasePlan": { + "$ref": "./diskRPCommon.json#/definitions/PurchasePlan", + "description": "Purchase plan information for the image from which the source disk for the snapshot was originally created." + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities for the image from which the source disk from the snapshot was originally created." + }, + "creationData": { + "$ref": "./diskRPCommon.json#/definitions/CreationData", + "description": "Disk source information. CreationData information cannot be changed after the disk has been created." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "diskSizeBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The size of the disk in bytes. This field is read only." + }, + "diskState": { + "$ref": "./diskRPCommon.json#/definitions/DiskState", + "description": "The state of the snapshot." + }, + "uniqueId": { + "type": "string", + "readOnly": true, + "description": "Unique Guid identifying the resource." + }, + "encryptionSettingsCollection": { + "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk provisioning state." + }, + "incremental": { + "type": "boolean", + "description": "Whether a snapshot is incremental. Incremental snapshots on the same disk occupy less space than full snapshots and can be diffed." + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "securityProfile": { + "$ref": "./diskRPCommon.json#/definitions/DiskSecurityProfile", + "description": "Contains the security related information for the resource." + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a snapshot supports hibernation." + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "completionPercent": { + "type": "number", + "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation." + }, + "dataAccessAuthMode": { + "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode" + } + }, + "required": [ + "creationData" + ], + "description": "Snapshot resource properties." + }, + "SnapshotUpdateProperties": { + "properties": { + "osType": { + "type": "string", + "description": "the Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "encryptionSettingsCollection": { + "$ref": "./diskRPCommon.json#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "encryption": { + "$ref": "./diskRPCommon.json#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "networkAccessPolicy": { + "$ref": "./diskRPCommon.json#/definitions/NetworkAccessPolicy" + }, + "diskAccessId": { + "type": "string", + "description": "ARM id of the DiskAccess resource for using private endpoints on disks." + }, + "supportsHibernation": { + "type": "boolean", + "description": "Indicates the OS on a snapshot supports hibernation." + }, + "publicNetworkAccess": { + "$ref": "./diskRPCommon.json#/definitions/PublicNetworkAccess" + }, + "dataAccessAuthMode": { + "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode" + }, + "supportedCapabilities": { + "$ref": "./diskRPCommon.json#/definitions/SupportedCapabilities", + "description": "List of supported capabilities for the image from which the OS disk was created." + } + }, + "description": "Snapshot resource update properties." + } + }, + "parameters": { + "SnapshotNameParameter": { + "name": "snapshotName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the snapshot that is being created. The name can't be changed after the snapshot is created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The max name length is 80 characters.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json new file mode 100644 index 000000000000..ca21e99fadf9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json @@ -0,0 +1,204 @@ +{ + "swagger": "2.0", + "info": { + "title": "ComputeManagementClient", + "description": "The Compute Management Client.", + "version": "2022-03-02" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": {}, + "definitions": { + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error base." + }, + "InnerError": { + "properties": { + "exceptiontype": { + "type": "string", + "description": "The exception type." + }, + "errordetail": { + "type": "string", + "description": "The internal error message or exception dump." + } + }, + "description": "Inner error details." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "x-ms-identifiers": [ + "message", + "target" + ], + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "Resource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "SubResourceReadOnly": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "ExtendedLocationType": { + "type": "string", + "description": "The type of extendedLocation.", + "enum": [ + "EdgeZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationTypes", + "modelAsString": true + } + }, + "ExtendedLocation": { + "description": "The complex type of the extended location.", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type of the extended location." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} From 61975313a4459bb12e12c5dcdf47b2daef1f01ea Mon Sep 17 00:00:00 2001 From: Haider Agha Date: Tue, 17 May 2022 17:20:09 -0400 Subject: [PATCH 11/25] Readme changes --- .../compute/resource-manager/readme.go.md | 2 +- .../compute/resource-manager/readme.md | 55 ++++++++++++++++++- 2 files changed, 54 insertions(+), 3 deletions(-) diff --git a/specification/compute/resource-manager/readme.go.md b/specification/compute/resource-manager/readme.go.md index 20a97de8ba6b..cee96b9020d9 100644 --- a/specification/compute/resource-manager/readme.go.md +++ b/specification/compute/resource-manager/readme.go.md @@ -38,7 +38,7 @@ azure-arm: true directive: # we do not need to hack to add a dummy enum entry in track 2, because track 2 generator will generate the enum type even if it only has on entry - - from: disk.json + - from: DiskRP/diskRPCommon.json where: "$.definitions.PurchasePlan" transform: > $["x-ms-client-name"] = "DiskPurchasePlan"; diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index 2a29d98d5f21..627110e764d5 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -34,7 +34,7 @@ These are the global settings for the Compute API. title: ComputeManagementClient description: Compute Client openapi-type: arm -tag: package-2022-03-01 +tag: package-2022-03-02 directive: - where: @@ -235,6 +235,58 @@ directive: - RequiredPropertiesMissingInResourceModel ``` +### Tag: package-2022-03-02 + +These settings apply only when `--tag=package-2022-03-02` is specified on the command line. + +``` yaml $(tag) == 'package-2022-03-02' +input-file: +- Microsoft.Compute/stable/2022-03-02/common.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/computeRPCommon.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineScaleSet.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachine.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineImage.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineExtensionImage.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/availabilitySet.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/proximityPlacementGroup.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/dedicatedHost.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/sshPublicKey.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/image.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/restorePoint.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/capacityReservation.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/logAnalytic.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/runCommand.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json +- Microsoft.Compute/stable/2021-11-01/runCommands.json +- Microsoft.Compute/stable/2021-07-01/skus.json +- Microsoft.Compute/stable/2021-10-01/gallery.json +- Microsoft.Compute/stable/2021-07-01/sharedGallery.json +- Microsoft.Compute/stable/2021-07-01/communityGallery.json +- Microsoft.Compute/stable/2021-03-01/cloudService.json +``` + + +### Tag: package-2022-03-02-only + +These settings apply only when `--tag=package-2022-03-02-only` is specified on the command line. + +``` yaml $(tag) == 'package-2022-03-02-only' +input-file: +- Microsoft.Compute/stable/2022-03-02/common.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskAccess.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json +- Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json +``` + + ### Tag: package-2022-03-01 These settings apply only when `--tag=package-2022-03-01` is specified on the command line. @@ -1114,4 +1166,3 @@ input-file: - Microsoft.Compute/stable/2019-07-01/disk.json ``` - From de6ecf5f41879da6e2b6a22c0e0b0d8f417a6dda Mon Sep 17 00:00:00 2001 From: anshulsolanki21 <73930854+anshulsolanki21@users.noreply.github.com> Date: Thu, 28 Apr 2022 21:05:17 +0530 Subject: [PATCH 12/25] adding SecurityProfile in DiskRestorePointProperties (#18826) --- .../stable/2022-03-02/DiskRP/diskRestorePoint.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json index 566e09a87448..67ea13f1b56d 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json @@ -372,6 +372,10 @@ "type": "string", "description": "Location of source disk or source disk restore point when source resource is from a different region.", "readOnly": true + }, + "securityProfile": { + "$ref": "./diskRPCommon.json#/definitions/DiskSecurityProfile", + "description": "Contains the security related information for the resource." } }, "description": "Properties of an incremental disk restore point" From 5e3a7ca01b1c043dd22dc155f32cb146ed56e9bb Mon Sep 17 00:00:00 2001 From: parkhyukjun89 Date: Fri, 29 Apr 2022 07:47:19 -0700 Subject: [PATCH 13/25] add cross-tenant feature (#18718) * add cross-tenant feature * fix filename typo * prettier --- .../2022-03-02/DiskRP/diskEncryptionSet.json | 29 ++++++++ ...eate_WithKeyVaultFromADifferentTenant.json | 66 +++++++++++++++++++ 2 files changed, 95 insertions(+) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json index 47d2ce525bec..5bddc68f2f36 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json @@ -90,6 +90,9 @@ }, "Create a disk encryption set with key vault from a different subscription.": { "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentSubscription.json" + }, + "Create a disk encryption set with key vault from a different tenant.": { + "$ref": "./examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json" } }, "x-ms-long-running-operation": true @@ -411,6 +414,10 @@ "readOnly": true, "$ref": "../common.json#/definitions/ApiError", "description": "The error that was encountered during auto-key rotation. If an error is present, then auto-key rotation will not be attempted until the error on this disk encryption set is fixed." + }, + "federatedClientId": { + "type": "string", + "description": "Multi-tenant application client id to access key vault in a different tenant. Setting the value to 'None' will clear the property." } } }, @@ -420,6 +427,8 @@ "type": "string", "enum": [ "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", "None" ], "x-ms-enum": { @@ -437,6 +446,26 @@ "readOnly": true, "type": "string", "description": "The tenant id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-client-tenant-id header in the PUT request if the resource has a systemAssigned(implicit) identity" + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "x-ms-client-name": "userAssignedIdentitiesValue", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the disk encryption set. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." } }, "description": "The managed identity for the disk encryption set. It should be given permission on the key vault before it can be used to encrypt disks." diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json new file mode 100644 index 000000000000..ac7c9abd0986 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskEncryptionSetExamples/DiskEncryptionSet_Create_WithKeyVaultFromADifferentTenant.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "location": "West US", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}": {} + } + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferenttenant.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "federatedClientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}": {} + } + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferenttenant.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "federatedClientId": "00000000-0000-0000-0000-000000000000", + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}": {} + } + }, + "properties": { + "activeKey": { + "keyUrl": "https://myvaultdifferenttenant.vault-int.azure-int.net/keys/{key}" + }, + "encryptionType": "EncryptionAtRestWithCustomerKey", + "federatedClientId": "00000000-0000-0000-0000-000000000000", + "previousKeys": [] + } + } + } + } +} From 2d473c8dd56c6d11b682e567bb807b37c5d8911f Mon Sep 17 00:00:00 2001 From: Akash Pargat Date: Fri, 29 Apr 2022 09:47:52 -0500 Subject: [PATCH 14/25] Swagger changes for PremiumV2 in DiskRP (#18786) * Swagger changes for PremiumV2 in DiskRP * Added new property copyCompletionError * Updated description for new property copyCompletionError * Added the type as object for CopyCompletionError * Addressed comment to update the description for CopySourceNotFound Co-authored-by: akashpargat --- .../stable/2022-03-02/DiskRP/disk.json | 12 +++- .../2022-03-02/DiskRP/diskRPCommon.json | 31 ++++++++++ ...k_Create_WithPremiumV2_LRSAccountType.json | 58 +++++++++++++++++++ .../stable/2022-03-02/DiskRP/snapshot.json | 4 ++ 4 files changed, 103 insertions(+), 2 deletions(-) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json index 530e0116637d..440fe1b879c7 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json @@ -118,6 +118,9 @@ "Create a managed disk with ssd zrs account type.": { "$ref": "./examples/diskExamples/Disk_Create_WithSSDZRSAccountType.json" }, + "Create a managed disk with premium v2 account type.": { + "$ref": "./examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json" + }, "Create a managed disk with security profile": { "$ref": "./examples/diskExamples/Disk_Create_WithSecurityProfile.json" }, @@ -532,7 +535,8 @@ "StandardSSD_LRS", "UltraSSD_LRS", "Premium_ZRS", - "StandardSSD_ZRS" + "StandardSSD_ZRS", + "PremiumV2_LRS" ], "x-ms-enum": { "name": "DiskStorageAccountTypes", @@ -561,6 +565,10 @@ { "value": "StandardSSD_ZRS", "description": "Standard SSD zone redundant storage. Best for web servers, lightly used enterprise applications and dev/test that need storage resiliency against zone failures." + }, + { + "value": "PremiumV2_LRS", + "description": "Premium SSD v2 locally redundant storage. Best for production and performance-sensitive workloads that consistently require low latency and high IOPS and throughput." } ] }, @@ -572,7 +580,7 @@ "description": "The sku tier." } }, - "description": "The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS, or StandardSSD_ZRS." + "description": "The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, UltraSSD_LRS, Premium_ZRS, StandardSSD_ZRS, or PremiumV2_LRS." }, "DiskProperties": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json index fa18406d56f5..fbc92fd262ce 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json @@ -410,6 +410,37 @@ ], "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." }, + "CopyCompletionError": { + "type": "object", + "properties": { + "errorCode": { + "type": "string", + "description": "Indicates the error code if the background copy of a resource created via the CopyStart operation fails.", + "enum": [ + "CopySourceNotFound" + ], + "x-ms-enum": { + "name": "CopyCompletionError", + "modelAsString": true, + "values": [ + { + "value": "CopySourceNotFound", + "description": "Indicates that the source snapshot was deleted while the background copy of the resource created via CopyStart operation was in progress." + } + ] + } + }, + "errorMessage": { + "type": "string", + "description": "Indicates the error message if the background copy of a resource created via the CopyStart operation fails." + } + }, + "required": [ + "errorCode", + "errorMessage" + ], + "description": "Indicates the error details if the background copy of a resource created via the CopyStart operation fails." + }, "SupportedCapabilities": { "type": "object", "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json new file mode 100644 index 000000000000..547ae8440e70 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_WithPremiumV2_LRSAccountType.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myPremiumV2Disk", + "disk": { + "location": "West US", + "sku": { + "name": "PremiumV2_LRS" + }, + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "diskIOPSReadWrite": 125, + "diskMBpsReadWrite": 3000 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myPremiumV2Disk", + "sku": { + "name": "PremiumV2_LRS", + "tier": "Premium" + } + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myPremiumV2Disk", + "sku": { + "name": "PremiumV2_LRS", + "tier": "Premium" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json index b09577c194d5..c387fe78db9e 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json @@ -587,6 +587,10 @@ "type": "number", "description": "Percentage complete for the background copy when a resource is created via the CopyStart operation." }, + "copyCompletionError": { + "$ref": "./diskRPCommon.json#/definitions/CopyCompletionError", + "description": "Indicates the error details if the background copy of a resource created via the CopyStart operation fails." + }, "dataAccessAuthMode": { "$ref": "./diskRPCommon.json#/definitions/DataAccessAuthMode" } From 67c8a68ba3b81b6a23205a4be9cf75673ee10730 Mon Sep 17 00:00:00 2001 From: jerryc3 <48365571+jerryc3@users.noreply.github.com> Date: Tue, 3 May 2022 07:21:22 -0700 Subject: [PATCH 15/25] Add new Azure Compute Gallery image ids to ImageDiskReference for PutDisk Support in 2022-03-02 Api Version (#18868) * new sig ids for put disk 2022-03-02 * fix errors and add example path * extra space * remove required id * prettify common Co-authored-by: Jerry Chan --- .../stable/2022-03-02/DiskRP/disk.json | 9 +++ .../2022-03-02/DiskRP/diskRPCommon.json | 15 +++-- ...omAnAzureComputeGalleryCommunityImage.json | 62 +++++++++++++++++++ ...nAzureComputeGalleryDirectSharedImage.json | 62 +++++++++++++++++++ ...Create_FromAnAzureComputeGalleryImage.json | 62 +++++++++++++++++++ 5 files changed, 205 insertions(+), 5 deletions(-) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json index 440fe1b879c7..9e46f5d80d07 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/disk.json @@ -132,6 +132,15 @@ }, "Create a confidential VM supported disk encrypted with customer managed key": { "$ref": "./examples/diskExamples/Disk_Create_ConfidentialVMSupportedDiskEncryptedWithCMK.json" + }, + "Create a managed disk from an Azure Compute Gallery image.": { + "$ref": "./examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json" + }, + "Create a managed disk from an Azure Compute Gallery direct shared image.": { + "$ref": "./examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json" + }, + "Create a managed disk from an Azure Compute Gallery community image.": { + "$ref": "./examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json" } }, "x-ms-long-running-operation": true diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json index fbc92fd262ce..bd84ca1adb13 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json @@ -332,7 +332,7 @@ }, "galleryImageReference": { "$ref": "#/definitions/ImageDiskReference", - "description": "Required if creating from a Gallery Image. The id of the ImageDiskReference will be the ARM id of the shared galley image version from which to create a disk." + "description": "Required if creating from a Gallery Image. The id/sharedGalleryImageId/communityGalleryImageId of the ImageDiskReference will be the ARM id of the shared galley image version from which to create a disk." }, "sourceUri": { "type": "string", @@ -371,7 +371,15 @@ "properties": { "id": { "type": "string", - "description": "A relative uri containing either a Platform Image Repository or user image reference." + "description": "A relative uri containing either a Platform Image Repository, user image, or Azure Compute Gallery image reference." + }, + "sharedGalleryImageId": { + "type": "string", + "description": "A relative uri containing a direct shared Azure Compute Gallery image reference." + }, + "communityGalleryImageId": { + "type": "string", + "description": "A relative uri containing a community Azure Compute Gallery image reference." }, "lun": { "type": "integer", @@ -379,9 +387,6 @@ "description": "If the disk is created from an image's data disk, this is an index that indicates which of the data disks in the image to use. For OS disks, this field is null." } }, - "required": [ - "id" - ], "description": "The source image used for creating the disk." }, "PurchasePlan": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json new file mode 100644 index 000000000000..653e7928851b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryCommunityImage.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "communityGalleryImageId": "/CommunityGalleries/{communityGalleryPublicGalleryName}/Images/{imageName}/Versions/1.0.0" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "communityGalleryImageId": "/CommunityGalleries/{communityGalleryPublicGalleryName}/Images/{imageName}/Versions/1.0.0" + } + }, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "communityGalleryImageId": "/CommunityGalleries/{communityGalleryPublicGalleryName}/Images/{imageName}/Versions/1.0.0" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json new file mode 100644 index 000000000000..86b42c2293f4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryDirectSharedImage.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "sharedGalleryImageId": "/SharedGalleries/{sharedGalleryUniqueName}/Images/{imageName}/Versions/1.0.0" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "sharedGalleryImageId": "/SharedGalleries/{sharedGalleryUniqueName}/Images/{imageName}/Versions/1.0.0" + } + }, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "sharedGalleryImageId": "/SharedGalleries/{sharedGalleryUniqueName}/Images/{imageName}/Versions/1.0.0" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json new file mode 100644 index 000000000000..3fa048836521 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/examples/diskExamples/Disk_Create_FromAnAzureComputeGalleryImage.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2022-03-02", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "id": "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Providers/Microsoft.Compute/Galleries/{galleryName}/Images/{imageName}/Versions/1.0.0" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "id": "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Providers/Microsoft.Compute/Galleries/{galleryName}/Images/{imageName}/Versions/1.0.0" + } + }, + "provisioningState": "Updating" + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "osType": "Windows", + "hyperVGeneration": "V1", + "supportedCapabilities": { + "acceleratedNetwork": true + }, + "creationData": { + "createOption": "FromImage", + "galleryImageReference": { + "id": "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Providers/Microsoft.Compute/Galleries/{galleryName}/Images/{imageName}/Versions/1.0.0" + } + } + } + } + } + } +} From 7cee4defc3695d4fb313ca7b4508f68497bf16dc Mon Sep 17 00:00:00 2001 From: parkhyukjun89 Date: Tue, 10 May 2022 07:55:23 -0700 Subject: [PATCH 16/25] Feature/cplat 2022 03 02 (#18945) * add cross-tenant feature * fix filename typo * prettier * add federatedClientId to diskEncryptionSetUpdateProperties --- .../stable/2022-03-02/DiskRP/diskEncryptionSet.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json index 5bddc68f2f36..b758526df71d 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json @@ -560,6 +560,10 @@ "rotationToLatestKeyVersionEnabled": { "type": "boolean", "description": "Set this flag to true to enable auto-updating of this disk encryption set to the latest key version." + }, + "federatedClientId": { + "type": "string", + "description": "Multi-tenant application client id to access key vault in a different tenant. Setting the value to 'None' will clear the property." } }, "description": "disk encryption set resource update properties." From ef3caf600b3f493e6f55fa67c3d80e3fbb04e18b Mon Sep 17 00:00:00 2001 From: Karan Manish Thakkar Date: Fri, 20 May 2022 10:22:20 -0700 Subject: [PATCH 17/25] GET snapshot-Changed CopyCompletionError enum name (#19160) Co-authored-by: Karan Manish Thakkar --- .../stable/2022-03-02/DiskRP/diskRPCommon.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json index bd84ca1adb13..0ea00a74ebac 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json @@ -425,7 +425,7 @@ "CopySourceNotFound" ], "x-ms-enum": { - "name": "CopyCompletionError", + "name": "CopyCompletionErrorReason", "modelAsString": true, "values": [ { From ed7d8bda28e69f069eead5023d793450904f25b7 Mon Sep 17 00:00:00 2001 From: Theodore Chang Date: Tue, 24 May 2022 20:29:58 -0500 Subject: [PATCH 18/25] move UserAssignedIdentities to common.json to fix duplicate definition --- .../2022-03-01/ComputeRP/virtualMachine.json | 18 +------ .../stable/2022-03-01/common.json | 49 +++++++++++++------ .../2022-03-02/DiskRP/diskEncryptionSet.json | 18 +------ .../stable/2022-03-02/common.json | 19 +++++++ 4 files changed, 55 insertions(+), 49 deletions(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachine.json index 14ca66126614..aaee010ba5d1 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachine.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachine.json @@ -2852,23 +2852,7 @@ } }, "userAssignedIdentities": { - "type": "object", - "additionalProperties": { - "type": "object", - "x-ms-client-name": "userAssignedIdentitiesValue", - "properties": { - "principalId": { - "readOnly": true, - "type": "string", - "description": "The principal id of user assigned identity." - }, - "clientId": { - "readOnly": true, - "type": "string", - "description": "The client id of user assigned identity." - } - } - }, + "$ref": "../common.json#/definitions/UserAssignedIdentities", "description": "The list of user identities associated with the Virtual Machine. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." } }, diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/common.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/common.json index e87a219ef3b8..74401158c60b 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/common.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/common.json @@ -216,22 +216,41 @@ "description": "The type of the extended location." } } + }, + "UserAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "x-ms-client-name": "userAssignedIdentitiesValue", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + } } }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client Api Version." + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } } } -} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json index b758526df71d..9b6da7f33508 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json @@ -448,23 +448,7 @@ "description": "The tenant id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-client-tenant-id header in the PUT request if the resource has a systemAssigned(implicit) identity" }, "userAssignedIdentities": { - "type": "object", - "additionalProperties": { - "type": "object", - "x-ms-client-name": "userAssignedIdentitiesValue", - "properties": { - "principalId": { - "readOnly": true, - "type": "string", - "description": "The principal id of user assigned identity." - }, - "clientId": { - "readOnly": true, - "type": "string", - "description": "The client id of user assigned identity." - } - } - }, + "$ref": "../common.json#/definitions/UserAssignedIdentities", "description": "The list of user identities associated with the disk encryption set. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." } }, diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json index ca21e99fadf9..56a0cbde4f1e 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json @@ -183,6 +183,25 @@ "description": "The type of the extended location." } } + }, + "UserAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "x-ms-client-name": "userAssignedIdentitiesValue", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + } } }, "parameters": { From 1a822d10305bf2986eec30d8ec7bb1ea41917f63 Mon Sep 17 00:00:00 2001 From: Theodore Chang Date: Tue, 24 May 2022 20:41:08 -0500 Subject: [PATCH 19/25] update readme with gallery 2022-01-03 --- .../compute/resource-manager/readme.md | 49 +++++++++++++++++-- 1 file changed, 46 insertions(+), 3 deletions(-) diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index ac0bf3ff1bf6..5c7396331e75 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -264,9 +264,10 @@ input-file: - Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json - Microsoft.Compute/stable/2021-11-01/runCommands.json - Microsoft.Compute/stable/2021-07-01/skus.json -- Microsoft.Compute/stable/2021-10-01/gallery.json -- Microsoft.Compute/stable/2021-07-01/sharedGallery.json -- Microsoft.Compute/stable/2021-07-01/communityGallery.json +- Microsoft.Compute/stable/2022-01-03/GalleryRP/galleryRPCommon.json +- Microsoft.Compute/stable/2022-01-03/GalleryRP/gallery.json +- Microsoft.Compute/stable/2022-01-03/GalleryRP/sharedGallery.json +- Microsoft.Compute/stable/2022-01-03/GalleryRP/communityGallery.json - Microsoft.Compute/stable/2021-03-01/cloudService.json ``` @@ -286,6 +287,48 @@ input-file: - Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json ``` +### Tag: package-2022-01-03 + +These settings apply only when `--tag=package-2022-01-03` is specified on the command line. + +``` yaml $(tag) == 'package-2022-01-03' +input-file: +- Microsoft.Compute/stable/2022-03-01/ComputeRP/computeRPCommon.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineScaleSet.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachine.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineImage.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineExtensionImage.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/availabilitySet.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/proximityPlacementGroup.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/dedicatedHost.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/sshPublicKey.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/image.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/restorePoint.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/capacityReservation.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/logAnalytic.json +- Microsoft.Compute/stable/2022-03-01/ComputeRP/runCommand.json +- Microsoft.Compute/stable/2021-07-01/skus.json +- Microsoft.Compute/stable/2021-12-01/disk.json +- Microsoft.Compute/stable/2022-01-03/common.json +- Microsoft.Compute/stable/2022-01-03/GalleryRP/galleryRPCommon.json +- Microsoft.Compute/stable/2022-01-03/GalleryRP/gallery.json +- Microsoft.Compute/stable/2022-01-03/GalleryRP/sharedGallery.json +- Microsoft.Compute/stable/2022-01-03/GalleryRP/communityGallery.json +- Microsoft.Compute/stable/2021-03-01/cloudService.json +``` + +### Tag: package-2022-01-03-only + +These settings apply only when `--tag=package-2022-01-03-only` is specified on the command line. + +``` yaml $(tag) == 'package-2022-01-03-only' +input-file: +- Microsoft.Compute/stable/2022-01-03/common.json +- Microsoft.Compute/stable/2022-01-03/GalleryRP/galleryRPCommon.json +- Microsoft.Compute/stable/2022-01-03/GalleryRP/gallery.json +- Microsoft.Compute/stable/2022-01-03/GalleryRP/sharedGallery.json +- Microsoft.Compute/stable/2022-01-03/GalleryRP/communityGallery.json +``` ### Tag: package-2022-03-01 From a3cc187dc7057702ce057495a08c0d579a3b0e00 Mon Sep 17 00:00:00 2001 From: Theodore Chang Date: Tue, 24 May 2022 20:49:57 -0500 Subject: [PATCH 20/25] sync with past updates --- .../stable/2022-01-03/common.json | 19 +++++++++++ .../stable/2022-03-02/common.json | 33 +++++++++++++++++++ .../compute/resource-manager/readme.md | 30 ----------------- 3 files changed, 52 insertions(+), 30 deletions(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-01-03/common.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-01-03/common.json index b883733c470e..c0e9a8d0ce9f 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-01-03/common.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-01-03/common.json @@ -216,6 +216,25 @@ "description": "The type of the extended location." } } + }, + "UserAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "x-ms-client-name": "userAssignedIdentitiesValue", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + } } }, "parameters": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json index 56a0cbde4f1e..a1d16dea57f7 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json @@ -160,6 +160,39 @@ }, "x-ms-azure-resource": true }, + "ResourceWithOptionalLocation": { + "type": "object", + "description": "The Resource model definition with location property as optional.", + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "x-ms-azure-resource": true + }, "ExtendedLocationType": { "type": "string", "description": "The type of extendedLocation.", diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index eac92b531872..835ccdb202f5 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -235,36 +235,6 @@ directive: - RequiredPropertiesMissingInResourceModel ``` -### Tag: package-2022-01-03 - -These settings apply only when `--tag=package-2022-01-03` is specified on the command line. - -``` yaml $(tag) == 'package-2022-01-03' -input-file: -- Microsoft.Compute/stable/2022-03-01/ComputeRP/computeRPCommon.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineScaleSet.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachine.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineImage.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineExtensionImage.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/availabilitySet.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/proximityPlacementGroup.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/dedicatedHost.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/sshPublicKey.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/image.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/restorePoint.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/capacityReservation.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/logAnalytic.json -- Microsoft.Compute/stable/2022-03-01/ComputeRP/runCommand.json -- Microsoft.Compute/stable/2021-07-01/skus.json -- Microsoft.Compute/stable/2021-12-01/disk.json -- Microsoft.Compute/stable/2022-01-03/common.json -- Microsoft.Compute/stable/2022-01-03/GalleryRP/galleryRPCommon.json -- Microsoft.Compute/stable/2022-01-03/GalleryRP/gallery.json -- Microsoft.Compute/stable/2022-01-03/GalleryRP/sharedGallery.json -- Microsoft.Compute/stable/2022-01-03/GalleryRP/communityGallery.json -- Microsoft.Compute/stable/2021-03-01/cloudService.json -``` - ### Tag: package-2022-03-02 These settings apply only when `--tag=package-2022-03-02` is specified on the command line. From c121025e4d0a84beedb6e713171a08958f9e0cb3 Mon Sep 17 00:00:00 2001 From: Theodore Chang Date: Tue, 24 May 2022 21:04:36 -0500 Subject: [PATCH 21/25] update with description for object --- .../stable/2022-01-03/common.json | 3 +- .../stable/2022-03-01/common.json | 33 ++++++++++--------- .../stable/2022-03-02/common.json | 3 +- 3 files changed, 21 insertions(+), 18 deletions(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-01-03/common.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-01-03/common.json index c0e9a8d0ce9f..f09d53f1c826 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-01-03/common.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-01-03/common.json @@ -234,7 +234,8 @@ "description": "The client id of user assigned identity." } } - } + }, + "description": "The list of user identities associated with the Virtual Machine. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." } }, "parameters": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/common.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/common.json index 74401158c60b..9e51f0fa8de6 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/common.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/common.json @@ -234,23 +234,24 @@ "description": "The client id of user assigned identity." } } - } + }, + "description": "The list of user identities associated with the Virtual Machine. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." } }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client Api Version." - } + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." } } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json index a1d16dea57f7..e469ebf2b29e 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/common.json @@ -234,7 +234,8 @@ "description": "The client id of user assigned identity." } } - } + }, + "description": "The list of user identities associated with the Virtual Machine. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." } }, "parameters": { From a62dfb53a84d5c635d433cba845323a3d3cbffd4 Mon Sep 17 00:00:00 2001 From: Theodore Chang Date: Wed, 25 May 2022 14:02:33 -0500 Subject: [PATCH 22/25] fix readme --- specification/compute/resource-manager/readme.md | 1 - 1 file changed, 1 deletion(-) diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index 835ccdb202f5..8cb624b1fed8 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -262,7 +262,6 @@ input-file: - Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json - Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json - Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json -- Microsoft.Compute/stable/2021-11-01/runCommands.json - Microsoft.Compute/stable/2021-07-01/skus.json - Microsoft.Compute/stable/2022-01-03/GalleryRP/galleryRPCommon.json - Microsoft.Compute/stable/2022-01-03/GalleryRP/gallery.json From 9e39aae1b7c0e90607506704bb64ddd2cdc597cb Mon Sep 17 00:00:00 2001 From: haagha <64601174+haagha@users.noreply.github.com> Date: Wed, 25 May 2022 15:21:53 -0400 Subject: [PATCH 23/25] GET snapshot-Changed CopyCompletionError enum name (#19227) Co-authored-by: Karan Manish Thakkar --- .../stable/2022-03-02/DiskRP/diskRPCommon.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json index bd84ca1adb13..0ea00a74ebac 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-02/DiskRP/diskRPCommon.json @@ -425,7 +425,7 @@ "CopySourceNotFound" ], "x-ms-enum": { - "name": "CopyCompletionError", + "name": "CopyCompletionErrorReason", "modelAsString": true, "values": [ { From d4e9c3f52a6c619b8087c21c78de94dc71af729e Mon Sep 17 00:00:00 2001 From: Haider Agha Date: Wed, 25 May 2022 15:24:28 -0400 Subject: [PATCH 24/25] fixing readme.md --- specification/compute/resource-manager/readme.md | 1 - 1 file changed, 1 deletion(-) diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index 627110e764d5..fea0f56c2990 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -262,7 +262,6 @@ input-file: - Microsoft.Compute/stable/2022-03-02/DiskRP/diskEncryptionSet.json - Microsoft.Compute/stable/2022-03-02/DiskRP/diskRestorePoint.json - Microsoft.Compute/stable/2022-03-02/DiskRP/snapshot.json -- Microsoft.Compute/stable/2021-11-01/runCommands.json - Microsoft.Compute/stable/2021-07-01/skus.json - Microsoft.Compute/stable/2021-10-01/gallery.json - Microsoft.Compute/stable/2021-07-01/sharedGallery.json From e4719946a9a97c0f4c6935047c369cae52f98c9c Mon Sep 17 00:00:00 2001 From: Theodore Chang Date: Fri, 27 May 2022 16:44:53 -0500 Subject: [PATCH 25/25] fix vmss userAssignedIdentities duplicate definition --- .../ComputeRP/virtualMachineScaleSet.json | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineScaleSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineScaleSet.json index 7b9c409b0848..6dd4ea7bd183 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineScaleSet.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/ComputeRP/virtualMachineScaleSet.json @@ -3657,23 +3657,7 @@ } }, "userAssignedIdentities": { - "type": "object", - "additionalProperties": { - "type": "object", - "x-ms-client-name": "VirtualMachineScaleSetIdentityUserAssignedIdentitiesValue", - "properties": { - "principalId": { - "readOnly": true, - "type": "string", - "description": "The principal id of user assigned identity." - }, - "clientId": { - "readOnly": true, - "type": "string", - "description": "The client id of user assigned identity." - } - } - }, + "$ref": "../common.json#/definitions/UserAssignedIdentities", "description": "The list of user identities associated with the virtual machine scale set. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." } },