Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5lbGFzdGljc2FuL2VsYXN0aWNzYW5zL3t9L3ZvbHVtZWdyb3Vwcy97fS92b2x1bWVzL3t9/2024-07-01-preview.xml (731 lines of code) (raw):

<?xml version='1.0' encoding='utf-8'?> <CodeGen plane="mgmt-plane"> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.elasticsan/elasticsans/{}/volumegroups/{}/volumes/{}" version="2024-07-01-preview" swagger="mgmt-plane/elasticsan/ResourceProviders/Microsoft.ElasticSan/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuRWxhc3RpY1Nhbi9lbGFzdGljU2Fucy97ZWxhc3RpY1Nhbk5hbWV9L3ZvbHVtZWdyb3Vwcy97dm9sdW1lR3JvdXBOYW1lfS92b2x1bWVzL3t2b2x1bWVOYW1lfQ==/V/MjAyNC0wNy0wMS1wcmV2aWV3"/> <commandGroup name="elastic-san volume"> <command name="show" version="2024-07-01-preview"> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.elasticsan/elasticsans/{}/volumegroups/{}/volumes/{}" version="2024-07-01-preview" swagger="mgmt-plane/elasticsan/ResourceProviders/Microsoft.ElasticSan/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuRWxhc3RpY1Nhbi9lbGFzdGljU2Fucy97ZWxhc3RpY1Nhbk5hbWV9L3ZvbHVtZWdyb3Vwcy97dm9sdW1lR3JvdXBOYW1lfS92b2x1bWVzL3t2b2x1bWVOYW1lfQ==/V/MjAyNC0wNy0wMS1wcmV2aWV3"/> <argGroup name=""> <arg type="string" var="$Path.elasticSanName" options="elastic-san-name elastic-san e" required="True" group="" idPart="name"> <help short="The name of the ElasticSan."/> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="24" minLength="3"/> </arg> <arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/> <arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/> <arg type="string" var="$Path.volumeGroupName" options="volume-group-name volume-group v" required="True" group="" idPart="child_name_1"> <help short="The name of the VolumeGroup."/> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </arg> <arg type="string" var="$Path.volumeName" options="volume-name name n" required="True" idPart="child_name_2"> <help short="The name of the Volume."/> <format pattern="^[a-z0-9]+(-[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </arg> </argGroup> <operation operationId="Volumes_Get"> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ElasticSan/elasticSans/{elasticSanName}/volumegroups/{volumeGroupName}/volumes/{volumeName}"> <request method="get"> <path> <param type="string" name="elasticSanName" arg="$Path.elasticSanName" required="True"> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="24" minLength="3"/> </param> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"> <format maxLength="90" minLength="1"/> </param> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"> <format minLength="1"/> </param> <param type="string" name="volumeGroupName" arg="$Path.volumeGroupName" required="True"> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </param> <param type="string" name="volumeName" arg="$Path.volumeName" required="True"> <format pattern="^[a-z0-9]+(-[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </param> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2024-07-01-preview&quot;"/> <format minLength="1"/> </const> </query> </request> <response statusCode="200"> <body> <json var="$Instance"> <schema type="object"> <prop readOnly="True" type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.ElasticSan/elasticSans/{}/volumegroups/{}/volumes/{}"/> </prop> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="object" name="creationData"> <prop type="string" name="createSource"> <enum> <item value="&quot;Disk&quot;"/> <item value="&quot;DiskRestorePoint&quot;"/> <item value="&quot;DiskSnapshot&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;VolumeSnapshot&quot;"/> </enum> </prop> <prop type="string" name="sourceId"/> </prop> <prop type="object" name="managedBy"> <prop type="string" name="resourceId"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Canceled&quot;"/> <item value="&quot;Creating&quot;"/> <item value="&quot;Deleted&quot;"/> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Invalid&quot;"/> <item value="&quot;Pending&quot;"/> <item value="&quot;Restoring&quot;"/> <item value="&quot;SoftDeleting&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="integer64" name="sizeGiB" required="True"/> <prop readOnly="True" type="object" name="storageTarget"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Canceled&quot;"/> <item value="&quot;Creating&quot;"/> <item value="&quot;Deleted&quot;"/> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Invalid&quot;"/> <item value="&quot;Pending&quot;"/> <item value="&quot;Restoring&quot;"/> <item value="&quot;SoftDeleting&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="status"> <enum> <item value="&quot;Healthy&quot;"/> <item value="&quot;Invalid&quot;"/> <item value="&quot;Running&quot;"/> <item value="&quot;Stopped&quot;"/> <item value="&quot;Stopped (deallocated)&quot;"/> <item value="&quot;Unhealthy&quot;"/> <item value="&quot;Unknown&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="targetIqn"/> <prop readOnly="True" type="string" name="targetPortalHostname"/> <prop readOnly="True" type="integer32" name="targetPortalPort"/> </prop> <prop readOnly="True" type="string" name="volumeId"/> </prop> <prop readOnly="True" type="object" name="systemData"> <prop type="dateTime" name="createdAt"/> <prop type="string" name="createdBy"/> <prop type="string" name="createdByType"> <enum> <item value="&quot;Application&quot;"/> <item value="&quot;Key&quot;"/> <item value="&quot;ManagedIdentity&quot;"/> <item value="&quot;User&quot;"/> </enum> </prop> <prop type="dateTime" name="lastModifiedAt"/> <prop type="string" name="lastModifiedBy"/> <prop type="string" name="lastModifiedByType"> <enum> <item value="&quot;Application&quot;"/> <item value="&quot;Key&quot;"/> <item value="&quot;ManagedIdentity&quot;"/> <item value="&quot;User&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </schema> </json> </body> </response> <response isError="True"> <body> <json> <schema type="@MgmtErrorFormat"/> </json> </body> </response> </http> </operation> <output type="object" ref="$Instance" clientFlatten="True"/> </command> <command name="delete" version="2024-07-01-preview" confirmation="Are you sure you want to perform this operation?"> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.elasticsan/elasticsans/{}/volumegroups/{}/volumes/{}" version="2024-07-01-preview" swagger="mgmt-plane/elasticsan/ResourceProviders/Microsoft.ElasticSan/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuRWxhc3RpY1Nhbi9lbGFzdGljU2Fucy97ZWxhc3RpY1Nhbk5hbWV9L3ZvbHVtZWdyb3Vwcy97dm9sdW1lR3JvdXBOYW1lfS92b2x1bWVzL3t2b2x1bWVOYW1lfQ==/V/MjAyNC0wNy0wMS1wcmV2aWV3"/> <argGroup name=""> <arg type="string" var="$Header.x-ms-delete-snapshots" options="x-ms-delete-snapshots delete-snapshots" group=""> <help short="Optional, used to delete snapshots under volume. Allowed value are only true or false. Default value is false."/> <enum> <item name="false" value="&quot;false&quot;"/> <item name="true" value="&quot;true&quot;"/> </enum> </arg> <arg type="string" var="$Header.x-ms-force-delete" options="x-ms-force-delete force-delete" group=""> <help short="Optional, used to delete volume if active sessions present. Allowed value are only true or false. Default value is false."/> <enum> <item name="false" value="&quot;false&quot;"/> <item name="true" value="&quot;true&quot;"/> </enum> </arg> <arg type="string" var="$Path.elasticSanName" options="elastic-san-name elastic-san e" required="True" group="" idPart="name"> <help short="The name of the ElasticSan."/> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="24" minLength="3"/> </arg> <arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/> <arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/> <arg type="string" var="$Path.volumeGroupName" options="volume-group-name volume-group v" required="True" group="" idPart="child_name_1"> <help short="The name of the VolumeGroup."/> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </arg> <arg type="string" var="$Path.volumeName" options="volume-name name n" required="True" idPart="child_name_2"> <help short="The name of the Volume."/> <format pattern="^[a-z0-9]+(-[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </arg> <arg type="string" var="$Query.deleteType" options="delete-type" stage="Preview" group=""> <help short="Optional. Specifies that the delete operation should be a permanent delete for the soft deleted volume. The value of deleteType can only be 'permanent'."/> <enum> <item name="permanent" value="&quot;permanent&quot;"/> </enum> </arg> </argGroup> <operation operationId="Volumes_Delete"> <longRunning finalStateVia="location"/> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ElasticSan/elasticSans/{elasticSanName}/volumegroups/{volumeGroupName}/volumes/{volumeName}"> <request method="delete"> <path> <param type="string" name="elasticSanName" arg="$Path.elasticSanName" required="True"> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="24" minLength="3"/> </param> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"> <format maxLength="90" minLength="1"/> </param> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"> <format minLength="1"/> </param> <param type="string" name="volumeGroupName" arg="$Path.volumeGroupName" required="True"> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </param> <param type="string" name="volumeName" arg="$Path.volumeName" required="True"> <format pattern="^[a-z0-9]+(-[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </param> </path> <query> <param type="string" name="deleteType" arg="$Query.deleteType"> <enum> <item value="&quot;permanent&quot;"/> </enum> </param> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2024-07-01-preview&quot;"/> <format minLength="1"/> </const> </query> <header> <param type="string" name="x-ms-delete-snapshots" arg="$Header.x-ms-delete-snapshots"> <enum> <item value="&quot;false&quot;"/> <item value="&quot;true&quot;"/> </enum> </param> <param type="string" name="x-ms-force-delete" arg="$Header.x-ms-force-delete"> <enum> <item value="&quot;false&quot;"/> <item value="&quot;true&quot;"/> </enum> </param> </header> </request> <response statusCode="200"/> <response statusCode="202"> <header> <item name="Location"/> </header> </response> <response statusCode="204"/> <response isError="True"> <body> <json> <schema type="@MgmtErrorFormat"/> </json> </body> </response> </http> </operation> </command> <command name="create" version="2024-07-01-preview"> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.elasticsan/elasticsans/{}/volumegroups/{}/volumes/{}" version="2024-07-01-preview" swagger="mgmt-plane/elasticsan/ResourceProviders/Microsoft.ElasticSan/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuRWxhc3RpY1Nhbi9lbGFzdGljU2Fucy97ZWxhc3RpY1Nhbk5hbWV9L3ZvbHVtZWdyb3Vwcy97dm9sdW1lR3JvdXBOYW1lfS92b2x1bWVzL3t2b2x1bWVOYW1lfQ==/V/MjAyNC0wNy0wMS1wcmV2aWV3"/> <argGroup name=""> <arg type="string" var="$Path.elasticSanName" options="elastic-san-name elastic-san e" required="True" group="" idPart="name"> <help short="The name of the ElasticSan."/> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="24" minLength="3"/> </arg> <arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/> <arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/> <arg type="string" var="$Path.volumeGroupName" options="volume-group-name volume-group v" required="True" group="" idPart="child_name_1"> <help short="The name of the VolumeGroup."/> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </arg> <arg type="string" var="$Path.volumeName" options="volume-name name n" required="True" idPart="child_name_2"> <help short="The name of the Volume."/> <format pattern="^[a-z0-9]+(-[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </arg> </argGroup> <argGroup name="Properties"> <arg type="object" var="$parameters.properties.creationData" options="creation-data" group="Properties"> <help short="State of the operation on the resource."/> <arg type="string" var="$parameters.properties.creationData.createSource" options="create-source"> <help short="This enumerates the possible sources of a volume creation."/> <enum> <item name="Disk" value="&quot;Disk&quot;"/> <item name="DiskRestorePoint" value="&quot;DiskRestorePoint&quot;"/> <item name="DiskSnapshot" value="&quot;DiskSnapshot&quot;"/> <item name="None" value="&quot;None&quot;"/> <item name="VolumeSnapshot" value="&quot;VolumeSnapshot&quot;"/> </enum> </arg> <arg type="string" var="$parameters.properties.creationData.sourceId" options="source-id"> <help short="Fully qualified resource ID for the resource. E.g. &quot;/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}&quot;"/> </arg> </arg> <arg type="object" var="$parameters.properties.managedBy" options="managed-by" hide="True" group="Properties"> <help short="Parent resource information."/> <arg type="string" var="$parameters.properties.managedBy.resourceId" options="resource-id"> <help short="Resource ID of the resource managing the volume."/> </arg> </arg> <arg type="integer64" var="$parameters.properties.sizeGiB" options="size-gib" required="True" group="Properties"> <help short="Volume size."/> </arg> </argGroup> <operation operationId="Volumes_Create"> <longRunning finalStateVia="location"/> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ElasticSan/elasticSans/{elasticSanName}/volumegroups/{volumeGroupName}/volumes/{volumeName}"> <request method="put"> <path> <param type="string" name="elasticSanName" arg="$Path.elasticSanName" required="True"> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="24" minLength="3"/> </param> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"> <format maxLength="90" minLength="1"/> </param> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"> <format minLength="1"/> </param> <param type="string" name="volumeGroupName" arg="$Path.volumeGroupName" required="True"> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </param> <param type="string" name="volumeName" arg="$Path.volumeName" required="True"> <format pattern="^[a-z0-9]+(-[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </param> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2024-07-01-preview&quot;"/> <format minLength="1"/> </const> </query> <body> <json> <schema type="object" name="parameters" required="True" clientFlatten="True"> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="object" name="creationData" arg="$parameters.properties.creationData"> <prop type="string" name="createSource" arg="$parameters.properties.creationData.createSource"> <enum> <item value="&quot;Disk&quot;"/> <item value="&quot;DiskRestorePoint&quot;"/> <item value="&quot;DiskSnapshot&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;VolumeSnapshot&quot;"/> </enum> </prop> <prop type="string" name="sourceId" arg="$parameters.properties.creationData.sourceId"/> </prop> <prop type="object" name="managedBy" arg="$parameters.properties.managedBy"> <prop type="string" name="resourceId" arg="$parameters.properties.managedBy.resourceId"/> </prop> <prop type="integer64" name="sizeGiB" arg="$parameters.properties.sizeGiB" required="True"/> </prop> </schema> </json> </body> </request> <response statusCode="200 201"> <body> <json var="$Instance"> <schema type="object"> <prop readOnly="True" type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.ElasticSan/elasticSans/{}/volumegroups/{}/volumes/{}"/> </prop> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="object" name="creationData"> <prop type="string" name="createSource"> <enum> <item value="&quot;Disk&quot;"/> <item value="&quot;DiskRestorePoint&quot;"/> <item value="&quot;DiskSnapshot&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;VolumeSnapshot&quot;"/> </enum> </prop> <prop type="string" name="sourceId"/> </prop> <prop type="object" name="managedBy"> <prop type="string" name="resourceId"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Canceled&quot;"/> <item value="&quot;Creating&quot;"/> <item value="&quot;Deleted&quot;"/> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Invalid&quot;"/> <item value="&quot;Pending&quot;"/> <item value="&quot;Restoring&quot;"/> <item value="&quot;SoftDeleting&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="integer64" name="sizeGiB" required="True"/> <prop readOnly="True" type="object" name="storageTarget"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Canceled&quot;"/> <item value="&quot;Creating&quot;"/> <item value="&quot;Deleted&quot;"/> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Invalid&quot;"/> <item value="&quot;Pending&quot;"/> <item value="&quot;Restoring&quot;"/> <item value="&quot;SoftDeleting&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="status"> <enum> <item value="&quot;Healthy&quot;"/> <item value="&quot;Invalid&quot;"/> <item value="&quot;Running&quot;"/> <item value="&quot;Stopped&quot;"/> <item value="&quot;Stopped (deallocated)&quot;"/> <item value="&quot;Unhealthy&quot;"/> <item value="&quot;Unknown&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="targetIqn"/> <prop readOnly="True" type="string" name="targetPortalHostname"/> <prop readOnly="True" type="integer32" name="targetPortalPort"/> </prop> <prop readOnly="True" type="string" name="volumeId"/> </prop> <prop readOnly="True" type="object" name="systemData"> <prop type="dateTime" name="createdAt"/> <prop type="string" name="createdBy"/> <prop type="string" name="createdByType"> <enum> <item value="&quot;Application&quot;"/> <item value="&quot;Key&quot;"/> <item value="&quot;ManagedIdentity&quot;"/> <item value="&quot;User&quot;"/> </enum> </prop> <prop type="dateTime" name="lastModifiedAt"/> <prop type="string" name="lastModifiedBy"/> <prop type="string" name="lastModifiedByType"> <enum> <item value="&quot;Application&quot;"/> <item value="&quot;Key&quot;"/> <item value="&quot;ManagedIdentity&quot;"/> <item value="&quot;User&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </schema> </json> </body> </response> <response isError="True"> <body> <json> <schema type="@MgmtErrorFormat"/> </json> </body> </response> </http> </operation> <output type="object" ref="$Instance" clientFlatten="True"/> </command> <command name="update" version="2024-07-01-preview"> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.elasticsan/elasticsans/{}/volumegroups/{}/volumes/{}" version="2024-07-01-preview" swagger="mgmt-plane/elasticsan/ResourceProviders/Microsoft.ElasticSan/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuRWxhc3RpY1Nhbi9lbGFzdGljU2Fucy97ZWxhc3RpY1Nhbk5hbWV9L3ZvbHVtZWdyb3Vwcy97dm9sdW1lR3JvdXBOYW1lfS92b2x1bWVzL3t2b2x1bWVOYW1lfQ==/V/MjAyNC0wNy0wMS1wcmV2aWV3"/> <argGroup name=""> <arg type="string" var="$Path.elasticSanName" options="elastic-san-name elastic-san e" required="True" group="" idPart="name"> <help short="The name of the ElasticSan."/> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="24" minLength="3"/> </arg> <arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/> <arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/> <arg type="string" var="$Path.volumeGroupName" options="volume-group-name volume-group v" required="True" group="" idPart="child_name_1"> <help short="The name of the VolumeGroup."/> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </arg> <arg type="string" var="$Path.volumeName" options="volume-name name n" required="True" idPart="child_name_2"> <help short="The name of the Volume."/> <format pattern="^[a-z0-9]+(-[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </arg> </argGroup> <argGroup name="Properties"> <arg nullable="True" type="object" var="$parameters.properties.creationData" options="creation-data" group="Properties"> <help short="State of the operation on the resource."/> <arg nullable="True" type="string" var="$parameters.properties.creationData.createSource" options="create-source"> <help short="This enumerates the possible sources of a volume creation."/> <enum> <item name="Disk" value="&quot;Disk&quot;"/> <item name="DiskRestorePoint" value="&quot;DiskRestorePoint&quot;"/> <item name="DiskSnapshot" value="&quot;DiskSnapshot&quot;"/> <item name="None" value="&quot;None&quot;"/> <item name="VolumeSnapshot" value="&quot;VolumeSnapshot&quot;"/> </enum> </arg> <arg nullable="True" type="string" var="$parameters.properties.creationData.sourceId" options="source-id"> <help short="Fully qualified resource ID for the resource. E.g. &quot;/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}&quot;"/> </arg> </arg> <arg nullable="True" type="object" var="$parameters.properties.managedBy" options="managed-by" hide="True" group="Properties"> <help short="Parent resource information."/> <arg nullable="True" type="string" var="$parameters.properties.managedBy.resourceId" options="resource-id"> <help short="Resource ID of the resource managing the volume."/> </arg> </arg> <arg type="integer64" var="$parameters.properties.sizeGiB" options="size-gib" group="Properties"> <help short="Volume size."/> </arg> </argGroup> <operation operationId="Volumes_Get"> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ElasticSan/elasticSans/{elasticSanName}/volumegroups/{volumeGroupName}/volumes/{volumeName}"> <request method="get"> <path> <param type="string" name="elasticSanName" arg="$Path.elasticSanName" required="True"> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="24" minLength="3"/> </param> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"> <format maxLength="90" minLength="1"/> </param> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"> <format minLength="1"/> </param> <param type="string" name="volumeGroupName" arg="$Path.volumeGroupName" required="True"> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </param> <param type="string" name="volumeName" arg="$Path.volumeName" required="True"> <format pattern="^[a-z0-9]+(-[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </param> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2024-07-01-preview&quot;"/> <format minLength="1"/> </const> </query> </request> <response statusCode="200"> <body> <json var="$Instance"> <schema type="object" cls="Volume_read"> <prop readOnly="True" type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.ElasticSan/elasticSans/{}/volumegroups/{}/volumes/{}"/> </prop> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="object" name="creationData"> <prop type="string" name="createSource"> <enum> <item value="&quot;Disk&quot;"/> <item value="&quot;DiskRestorePoint&quot;"/> <item value="&quot;DiskSnapshot&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;VolumeSnapshot&quot;"/> </enum> </prop> <prop type="string" name="sourceId"/> </prop> <prop type="object" name="managedBy"> <prop type="string" name="resourceId"/> </prop> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Canceled&quot;"/> <item value="&quot;Creating&quot;"/> <item value="&quot;Deleted&quot;"/> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Invalid&quot;"/> <item value="&quot;Pending&quot;"/> <item value="&quot;Restoring&quot;"/> <item value="&quot;SoftDeleting&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="integer64" name="sizeGiB" required="True"/> <prop readOnly="True" type="object" name="storageTarget"> <prop readOnly="True" type="string" name="provisioningState"> <enum> <item value="&quot;Canceled&quot;"/> <item value="&quot;Creating&quot;"/> <item value="&quot;Deleted&quot;"/> <item value="&quot;Deleting&quot;"/> <item value="&quot;Failed&quot;"/> <item value="&quot;Invalid&quot;"/> <item value="&quot;Pending&quot;"/> <item value="&quot;Restoring&quot;"/> <item value="&quot;SoftDeleting&quot;"/> <item value="&quot;Succeeded&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop type="string" name="status"> <enum> <item value="&quot;Healthy&quot;"/> <item value="&quot;Invalid&quot;"/> <item value="&quot;Running&quot;"/> <item value="&quot;Stopped&quot;"/> <item value="&quot;Stopped (deallocated)&quot;"/> <item value="&quot;Unhealthy&quot;"/> <item value="&quot;Unknown&quot;"/> <item value="&quot;Updating&quot;"/> </enum> </prop> <prop readOnly="True" type="string" name="targetIqn"/> <prop readOnly="True" type="string" name="targetPortalHostname"/> <prop readOnly="True" type="integer32" name="targetPortalPort"/> </prop> <prop readOnly="True" type="string" name="volumeId"/> </prop> <prop readOnly="True" type="object" name="systemData"> <prop type="dateTime" name="createdAt"/> <prop type="string" name="createdBy"/> <prop type="string" name="createdByType"> <enum> <item value="&quot;Application&quot;"/> <item value="&quot;Key&quot;"/> <item value="&quot;ManagedIdentity&quot;"/> <item value="&quot;User&quot;"/> </enum> </prop> <prop type="dateTime" name="lastModifiedAt"/> <prop type="string" name="lastModifiedBy"/> <prop type="string" name="lastModifiedByType"> <enum> <item value="&quot;Application&quot;"/> <item value="&quot;Key&quot;"/> <item value="&quot;ManagedIdentity&quot;"/> <item value="&quot;User&quot;"/> </enum> </prop> </prop> <prop readOnly="True" type="string" name="type"/> </schema> </json> </body> </response> <response isError="True"> <body> <json> <schema type="@MgmtErrorFormat"/> </json> </body> </response> </http> </operation> <operation> <instanceUpdate ref="$Instance"> <json> <schema type="object" name="parameters" required="True" clientFlatten="True"> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="object" name="creationData" arg="$parameters.properties.creationData"> <prop type="string" name="createSource" arg="$parameters.properties.creationData.createSource"> <enum> <item value="&quot;Disk&quot;"/> <item value="&quot;DiskRestorePoint&quot;"/> <item value="&quot;DiskSnapshot&quot;"/> <item value="&quot;None&quot;"/> <item value="&quot;VolumeSnapshot&quot;"/> </enum> </prop> <prop type="string" name="sourceId" arg="$parameters.properties.creationData.sourceId"/> </prop> <prop type="object" name="managedBy" arg="$parameters.properties.managedBy"> <prop type="string" name="resourceId" arg="$parameters.properties.managedBy.resourceId"/> </prop> <prop type="integer64" name="sizeGiB" arg="$parameters.properties.sizeGiB" required="True"/> </prop> </schema> </json> </instanceUpdate> </operation> <operation operationId="Volumes_Create"> <longRunning finalStateVia="location"/> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ElasticSan/elasticSans/{elasticSanName}/volumegroups/{volumeGroupName}/volumes/{volumeName}"> <request method="put"> <path> <param type="string" name="elasticSanName" arg="$Path.elasticSanName" required="True"> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="24" minLength="3"/> </param> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"> <format maxLength="90" minLength="1"/> </param> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"> <format minLength="1"/> </param> <param type="string" name="volumeGroupName" arg="$Path.volumeGroupName" required="True"> <format pattern="^[A-Za-z0-9]+((-|_)[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </param> <param type="string" name="volumeName" arg="$Path.volumeName" required="True"> <format pattern="^[a-z0-9]+(-[a-z0-9A-Z]+)*$" maxLength="63" minLength="3"/> </param> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2024-07-01-preview&quot;"/> <format minLength="1"/> </const> </query> <body> <json ref="$Instance"/> </body> </request> <response statusCode="200 201"> <body> <json var="$Instance"> <schema type="@Volume_read"/> </json> </body> </response> <response isError="True"> <body> <json> <schema type="@MgmtErrorFormat"/> </json> </body> </response> </http> </operation> <output type="object" ref="$Instance" clientFlatten="True"/> </command> </commandGroup> </CodeGen>