diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-03-01/examples/LocationOperationStatus_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-03-01/examples/LocationOperationStatus_Get.json new file mode 100644 index 000000000000..2e42868df04e --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-03-01/examples/LocationOperationStatus_Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "locationName": "westus", + "operationId": "eyJwYXJ0aXRpb25JZCI6ImE1ZDNiMDU4LTYwN2MtNDI0Ny05Y2FmLWJlZmU4NGQ0ZDU0NyIsIndvcmtmbG93SWQiOiJjYzg1MTY2YS0xMjI2LTQ4MGYtYWM5ZC1jMmRhNTVmY2M2ODYiLCJ3b3JrZmxvd09wZXJhdGlvbklkIjoiOTdmODU5ZTAtOGY1MC00ZTg4LWJkZDEtNWZlYzgwYTVlYzM0tui=", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/providers/microsoft.storagesync/locations/westus/operations/eyJwYXJ0aXRpb25JZCI6ImE1ZDNiMDU4LTYwN2MtNDI0Ny05Y2FmLWJlZmU4NGQ0ZDU0NyIsIndvcmtmbG93SWQiOiJjYzg1MTY2YS0xMjI2LTQ4MGYtYWM5ZC1jMmRhNTVmY2M2ODYiLCJ3b3JrZmxvd09wZXJhdGlvbklkIjoiOTdmODU5ZTAtOGY1MC00ZTg4LWJkZDEtNWZlYzgwYTVlYzM0tui=", + "name": "eyJwYXJ0aXRpb25JZCI6ImE1ZDNiMDU4LTYwN2MtNDI0Ny05Y2FmLWJlZmU4NGQ0ZDU0NyIsIndvcmtmbG93SWQiOiJjYzg1MTY2YS0xMjI2LTQ4MGYtYWM5ZC1jMmRhNTVmY2M2ODYiLCJ3b3JrZmxvd09wZXJhdGlvbklkIjoiOTdmODU5ZTAtOGY1MC00ZTg4LWJkZDEtNWZlYzgwYTVlYzM0tui=", + "status": "Succeeded", + "startTime": "2021-09-14T19:59:24.6247688Z", + "endTime": "2021-09-14T19:59:30.8055279Z" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-03-01/storagesync.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-03-01/storagesync.json index a665e00b1c48..12b7659dfaf0 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-03-01/storagesync.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-03-01/storagesync.json @@ -3071,6 +3071,66 @@ } } } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageSync/locations/{locationName}/operations/{operationId}": { + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The desired region to obtain information from." + }, + { + "name": "operationId", + "in": "path", + "description": "operation Id", + "required": true, + "type": "string" + } + ], + "tags": [ + "Operation Status" + ], + "operationId": "LocationOperationStatus", + "description": "Get Operation status", + "x-ms-examples": { + "Workflows_Get": { + "$ref": "./examples/LocationOperationStatus_Get.json" + } + }, + "responses": { + "200": { + "description": "Operation Status", + "schema": { + "$ref": "#/definitions/LocationOperationStatus" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + } } }, "definitions": { @@ -3107,6 +3167,10 @@ "details": { "$ref": "#/definitions/StorageSyncErrorDetails", "description": "Error details of the given entry." + }, + "innerError": { + "$ref": "#/definitions/StorageSyncInnerErrorDetails", + "description": "Inner error details of the given entry." } } }, @@ -3125,6 +3189,48 @@ "target": { "type": "string", "description": "Target of the given entry." + }, + "requestUri": { + "type": "string", + "description": "Request URI of the given entry." + }, + "exceptionType": { + "type": "string", + "description": "Exception type of the given entry." + }, + "httpMethod": { + "type": "string", + "description": "HTTP method of the given entry." + }, + "hashedMessage": { + "type": "string", + "description": "Hashed message of the given entry." + }, + "httpErrorCode": { + "type": "string", + "description": "HTTP error code of the given entry." + } + } + }, + "StorageSyncInnerErrorDetails": { + "type": "object", + "description": "Error Details object.", + "properties": { + "callStack": { + "type": "string", + "description": "Call stack of the error." + }, + "message": { + "type": "string", + "description": "Error message of the error." + }, + "innerException": { + "type": "string", + "description": "Exception of the inner error." + }, + "innerExceptionCallStack": { + "type": "string", + "description": "Call stack of the inner error." } } }, @@ -3396,11 +3502,13 @@ }, "initialDownloadPolicy": { "$ref": "#/definitions/InitialDownloadPolicy", - "description": "Policy for how namespace and files are recalled during FastDr." + "description": "Policy for how namespace and files are recalled during FastDr.", + "default": "NamespaceThenModifiedFiles" }, "localCacheMode": { "$ref": "#/definitions/LocalCacheMode", - "description": "Policy for enabling follow-the-sun business models: link local cache to cloud behavior to pre-populate before local access." + "description": "Policy for enabling follow-the-sun business models: link local cache to cloud behavior to pre-populate before local access.", + "default": "UpdateLocallyCachedFiles" } } }, @@ -3578,6 +3686,10 @@ "origin": { "type": "string", "description": "The origin." + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Properties of the operations resource." } } }, @@ -3625,6 +3737,84 @@ } } }, + "OperationProperties": { + "type": "object", + "description": "Properties of the operations resource.", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/OperationResourceServiceSpecification", + "description": "Service specification for the operations resource." + } + } + }, + "OperationResourceServiceSpecification": { + "type": "object", + "description": "Service specification.", + "properties": { + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationResourceMetricSpecification" + }, + "description": "List of metric specifications." + } + } + }, + "OperationResourceMetricSpecification": { + "type": "object", + "description": "Operation Display Resource object.", + "properties": { + "name": { + "type": "string", + "description": "Name of the metric." + }, + "displayName": { + "type": "string", + "description": "Display name for the metric." + }, + "displayDescription": { + "type": "string", + "description": "Display description for the metric." + }, + "unit": { + "type": "string", + "description": "Unit for the metric." + }, + "aggregationType": { + "type": "string", + "description": "Aggregation type for the metric." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "Fill gaps in the metric with zero." + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationResourceMetricSpecificationDimension" + }, + "description": "Dimensions for the metric specification." + } + } + }, + "OperationResourceMetricSpecificationDimension": { + "type": "object", + "description": "OperationResourceMetricSpecificationDimension object.", + "properties": { + "name": { + "type": "string", + "description": "Name of the dimension." + }, + "displayName": { + "type": "string", + "description": "Display name of the dimensions." + }, + "toBeExportedForShoebox": { + "type": "boolean", + "description": "Indicates metric should be exported for Shoebox." + } + } + }, "CheckNameAvailabilityParameters": { "properties": { "name": { @@ -4017,6 +4207,17 @@ "type": "string", "description": "Registered Server Agent Version" }, + "agentVersionStatus": { + "$ref": "#/definitions/RegisteredServerAgentVersionStatus", + "description": "Registered Server Agent Version Status", + "readOnly": true + }, + "agentVersionExpirationDate": { + "type": "string", + "format": "date-time", + "description": "Registered Server Agent Version Expiration Date", + "readOnly": true + }, "serverOSVersion": { "type": "string", "description": "Registered Server OS Version" @@ -4375,6 +4576,11 @@ }, "description": "Array of per-item errors coming from the last sync session.", "readOnly": true + }, + "lastSyncMode": { + "$ref": "#/definitions/ServerEndpointSyncMode", + "description": "Sync mode", + "readOnly": true } } }, @@ -4422,6 +4628,11 @@ "minimum": 0, "description": "Total bytes (if available)", "readOnly": true + }, + "syncMode": { + "$ref": "#/definitions/ServerEndpointSyncMode", + "description": "Sync mode", + "readOnly": true } } }, @@ -4451,6 +4662,21 @@ } } }, + "ServerEndpointSyncMode": { + "type": "string", + "description": "Sync mode for the server endpoint.", + "enum": [ + "Regular", + "NamespaceDownload", + "InitialUpload", + "SnapshotUpload", + "InitialFullDownload" + ], + "x-ms-enum": { + "name": "ServerEndpointSyncMode", + "modelAsString": true + } + }, "PhysicalPath": { "type": "string", "description": "Server folder used for data synchronization" @@ -4630,6 +4856,50 @@ }, "description": "Operation status object" }, + "LocationOperationStatus": { + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Operation resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Operation Id" + }, + "status": { + "readOnly": true, + "type": "string", + "description": "Operation status" + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Start time of the operation" + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "End time of the operation" + }, + "error": { + "readOnly": true, + "$ref": "#/definitions/StorageSyncApiError", + "description": "Error details." + }, + "percentComplete": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Percent complete." + } + }, + "description": "Operation status object" + }, "ServerEndpointCloudTieringStatus": { "type": "object", "description": "Server endpoint cloud tiering status object.", @@ -4921,6 +5191,20 @@ "readOnly": true } } + }, + "RegisteredServerAgentVersionStatus": { + "type": "string", + "description": "Type of the registered server agent version status", + "enum": [ + "Ok", + "NearExpiry", + "Expired", + "Blocked" + ], + "x-ms-enum": { + "name": "RegisteredServerAgentVersionStatus", + "modelAsString": true + } } }, "parameters": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-09-01/examples/LocationOperationStatus_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-09-01/examples/LocationOperationStatus_Get.json new file mode 100644 index 000000000000..2debbcf93d2c --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-09-01/examples/LocationOperationStatus_Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "locationName": "westus", + "operationId": "eyJwYXJ0aXRpb25JZCI6ImE1ZDNiMDU4LTYwN2MtNDI0Ny05Y2FmLWJlZmU4NGQ0ZDU0NyIsIndvcmtmbG93SWQiOiJjYzg1MTY2YS0xMjI2LTQ4MGYtYWM5ZC1jMmRhNTVmY2M2ODYiLCJ3b3JrZmxvd09wZXJhdGlvbklkIjoiOTdmODU5ZTAtOGY1MC00ZTg4LWJkZDEtNWZlYzgwYTVlYzM0tui=", + "api-version": "2020-09-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/providers/microsoft.storagesync/locations/westus/operations/eyJwYXJ0aXRpb25JZCI6ImE1ZDNiMDU4LTYwN2MtNDI0Ny05Y2FmLWJlZmU4NGQ0ZDU0NyIsIndvcmtmbG93SWQiOiJjYzg1MTY2YS0xMjI2LTQ4MGYtYWM5ZC1jMmRhNTVmY2M2ODYiLCJ3b3JrZmxvd09wZXJhdGlvbklkIjoiOTdmODU5ZTAtOGY1MC00ZTg4LWJkZDEtNWZlYzgwYTVlYzM0tui=", + "name": "eyJwYXJ0aXRpb25JZCI6ImE1ZDNiMDU4LTYwN2MtNDI0Ny05Y2FmLWJlZmU4NGQ0ZDU0NyIsIndvcmtmbG93SWQiOiJjYzg1MTY2YS0xMjI2LTQ4MGYtYWM5ZC1jMmRhNTVmY2M2ODYiLCJ3b3JrZmxvd09wZXJhdGlvbklkIjoiOTdmODU5ZTAtOGY1MC00ZTg4LWJkZDEtNWZlYzgwYTVlYzM0tui=", + "status": "Succeeded", + "startTime": "2021-09-14T19:59:24.6247688Z", + "endTime": "2021-09-14T19:59:30.8055279Z" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-09-01/storagesync.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-09-01/storagesync.json index 6ca36b30eac1..c4a8fca616ec 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-09-01/storagesync.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2020-09-01/storagesync.json @@ -3071,6 +3071,66 @@ } } } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageSync/locations/{locationName}/operations/{operationId}": { + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The desired region to obtain information from." + }, + { + "name": "operationId", + "in": "path", + "description": "operation Id", + "required": true, + "type": "string" + } + ], + "tags": [ + "Operation Status" + ], + "operationId": "LocationOperationStatus", + "description": "Get Operation status", + "x-ms-examples": { + "Workflows_Get": { + "$ref": "./examples/LocationOperationStatus_Get.json" + } + }, + "responses": { + "200": { + "description": "Operation Status", + "schema": { + "$ref": "#/definitions/LocationOperationStatus" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + } } }, "definitions": { @@ -4894,6 +4954,50 @@ }, "description": "Operation status object" }, + "LocationOperationStatus": { + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Operation resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Operation Id" + }, + "status": { + "readOnly": true, + "type": "string", + "description": "Operation status" + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Start time of the operation" + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "End time of the operation" + }, + "error": { + "readOnly": true, + "$ref": "#/definitions/StorageSyncApiError", + "description": "Error details." + }, + "percentComplete": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Percent complete." + } + }, + "description": "Operation status object" + }, "ServerEndpointCloudTieringStatus": { "type": "object", "description": "Server endpoint cloud tiering status object.",