diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-03-18/HybridCompute.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-03-18/HybridCompute.json new file mode 100644 index 000000000000..7243fe2f0b19 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-03-18/HybridCompute.json @@ -0,0 +1,789 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridComputeManagementClient", + "description": "The Hybrid Compute Management Client.", + "version": "2019-03-18-preview" + }, + "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.HybridCompute/machines/{name}": { + "put": { + "tags": [ + "machines" + ], + "operationId": "Machines_CreateOrUpdate", + "description": "The operation to create or update a hybrid machine resource identity in Azure.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Machine" + }, + "description": "Parameters supplied to the Create hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {} + }, + "patch": { + "tags": [ + "machines" + ], + "operationId": "Machines_Update", + "description": "The operation to update a hybrid machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineUpdate" + }, + "description": "Parameters supplied to the Update hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {} + }, + "delete": { + "tags": [ + "machines" + ], + "operationId": "Machines_Delete", + "description": "The operation to remove a hybrid machine identity in Azure.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {} + }, + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_Get", + "description": "Retrieves information about the model view or the instance view of a hybrid machine.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {} + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/reconnect": { + "post": { + "tags": [ + "machines" + ], + "operationId": "Machines_Reconnect", + "description": "The operation to reconnect a hybrid machine resource to its identity in Azure.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineReconnect" + }, + "description": "Parameters supplied to the Reconnect hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {} + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListByResourceGroup", + "description": "Lists all the hybrid machines in the specified resource group. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {}, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListBySubscription", + "description": "Lists all the hybrid machines in the specified subscription. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": {}, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.HybridCompute/operations": { + "get": { + "tags": [ + "operations" + ], + "operationId": "Operations_List", + "description": "Gets a list of hybrid compute operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "OperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationValueDisplay", + "description": "Display properties" + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Hybrid Compute Operation Value Display." + }, + "OSProfile": { + "readOnly": true, + "properties": { + "computerName": { + "type": "string", + "readOnly": true, + "description": "Specifies the host OS name of the hybrid machine." + } + }, + "description": "Specifies the operating system settings for the hybrid machine." + }, + "MachineProperties": { + "properties": { + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings for the hybrid machine." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the hybrid machine agent.", + "enum": [ + "Connected", + "Disconnected", + "Error" + ], + "x-ms-enum": { + "name": "StatusTypes", + "modelAsString": false + } + }, + "lastStatusChange": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time of the last status change." + }, + "errorDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "description": "Details about the error state." + }, + "agentVersion": { + "readOnly": true, + "type": "string", + "description": "The hybrid machine agent full version." + }, + "vmId": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine unique ID." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine display name." + }, + "machineFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine FQDN." + }, + "physicalLocation": { + "type": "string", + "description": "Resource's Physical Location" + }, + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "osName": { + "readOnly": true, + "type": "string", + "description": "The Operating System running on the hybrid machine." + }, + "osVersion": { + "readOnly": true, + "type": "string", + "description": "The version of Operating System running on the hybrid machine." + } + }, + "description": "Describes the properties of a hybrid machine." + }, + "MachineReconnectProperties": { + "properties": { + "vmId": { + "type": "string", + "description": "Specifies the hybrid machine unique ID." + }, + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding." + } + }, + "description": "Describes the properties required to reconnect a hybrid machine." + }, + "MachineUpdateProperties": { + "properties": { + "physicalLocation": { + "type": "string", + "description": "Resource's Physical Location" + } + }, + "description": "Describes the ARM updatable properties of a hybrid machine." + }, + "Machine": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MachineProperties", + "description": "Hybrid Compute Machine properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a hybrid machine." + }, + "MachineUpdate": { + "properties": { + "identity": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/Identity", + "description": "Hybrid Compute Machine Managed Identity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MachineUpdateProperties", + "description": "Hybrid Compute Machine properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a hybrid machine Update." + }, + "MachineReconnect": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MachineReconnectProperties", + "description": "Hybrid Compute Machine properties" + } + }, + "description": "Describes a hybrid machine reconnect." + }, + "MachineListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Machine" + }, + "description": "The list of hybrid machines." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of VMs. Call ListNext() with this URI to fetch the next page of hybrid machines." + } + }, + "required": [ + "value" + ], + "description": "The List hybrid machine operation response." + }, + "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", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "identity": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/Identity", + "description": "Hybrid Compute Machine Managed Identity" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "UpdateResource": { + "description": "The Update Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + } + }, + "ErrorDetail": { + "title": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error's code.", + "type": "string" + }, + "message": { + "description": "A human readable error message.", + "type": "string" + }, + "target": { + "description": "Indicates which property in the request is responsible for the error.", + "type": "string" + }, + "details": { + "description": "Additional error details.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + } + } + }, + "required": [ + "code", + "message" + ] + }, + "ErrorResponse": { + "title": "Error response.", + "description": "Contains details when the response code indicates an error.", + "type": "object", + "properties": { + "error": { + "description": "The error details.", + "$ref": "#/definitions/ErrorDetail" + } + }, + "required": [ + "error" + ] + }, + "Identity": { + "title": "Managed Identity.", + "type": "object", + "properties": { + "type": { + "description": "The identity type.", + "type": "string" + }, + "principalId": { + "readOnly": true, + "description": "The identity's principal id.", + "type": "string" + }, + "tenantId": { + "readOnly": true, + "description": "The identity's tenant id.", + "type": "string" + } + } + } + }, + "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." + } + } +} \ No newline at end of file diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json new file mode 100644 index 000000000000..42cdd6fec784 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json @@ -0,0 +1,1270 @@ +{ + "swagger":"2.0", + "info":{ + "title":"HybridComputeManagementClient", + "description":"The Hybrid Compute Management Client.", + "version":"2019-08-02-preview" + }, + "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.HybridCompute/machines/{name}":{ + "put":{ + "tags":[ + "machines" + ], + "operationId":"Machines_CreateOrUpdate", + "description":"The operation to create or update a hybrid machine resource identity in Azure.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + }, + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the hybrid machine." + }, + { + "name":"parameters", + "in":"body", + "required":true, + "schema":{ + "$ref":"#/definitions/Machine" + }, + "description":"Parameters supplied to the Create hybrid machine operation." + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/Machine" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or Update a Machine": { + "$ref": "./examples/Machines_CreateOrUpdate.json" + } + } + }, + "patch":{ + "tags":[ + "machines" + ], + "operationId":"Machines_Update", + "description":"The operation to update a hybrid machine.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + }, + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the hybrid machine." + }, + { + "name":"parameters", + "in":"body", + "required":true, + "schema":{ + "$ref":"#/definitions/MachineUpdate" + }, + "description":"Parameters supplied to the Update hybrid machine operation." + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/Machine" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update a Machine": { + "$ref": "./examples/Machines_Update.json" + } + } + }, + "delete":{ + "tags":[ + "machines" + ], + "operationId":"Machines_Delete", + "description":"The operation to remove a hybrid machine identity in Azure.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + }, + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the hybrid machine." + } + ], + "responses":{ + "200":{ + "description":"OK" + }, + "204":{ + "description":"No Content" + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a Machine": { + "$ref": "./examples/Machines_Delete.json" + } + } + }, + "get":{ + "tags":[ + "machines" + ], + "operationId":"Machines_Get", + "description":"Retrieves information about the model view or the instance view of a hybrid machine.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + }, + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the hybrid machine." + }, + { + "name":"$expand", + "in":"query", + "required":false, + "type":"string", + "description":"The expand expression to apply on the operation.", + "enum":[ + "instanceView" + ], + "x-ms-enum":{ + "name":"InstanceViewTypes", + "modelAsString":false + } + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/Machine" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Machine": { + "$ref": "./examples/Machines_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/reconnect":{ + "post":{ + "tags":[ + "machines" + ], + "operationId":"Machines_Reconnect", + "description":"The operation to reconnect a hybrid machine resource to its identity in Azure.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + }, + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the hybrid machine." + }, + { + "name":"parameters", + "in":"body", + "required":true, + "schema":{ + "$ref":"#/definitions/MachineReconnect" + }, + "description":"Parameters supplied to the Reconnect hybrid machine operation." + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/Machine" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Reconnect a Machine": { + "$ref": "./examples/Machines_Reconnect.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines":{ + "get":{ + "tags":[ + "machines" + ], + "operationId":"Machines_ListByResourceGroup", + "description":"Lists all the hybrid machines in the specified resource group. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + }, + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/MachineListResult" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Machines by resource group": { + "$ref": "./examples/Machines_ListByResourceGroup.json" + } + }, + "x-ms-pageable":{ + "nextLinkName":"nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines":{ + "get":{ + "tags":[ + "machines" + ], + "operationId":"Machines_ListBySubscription", + "description":"Lists all the hybrid machines in the specified subscription. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/MachineListResult" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Machines by resource group": { + "$ref": "./examples/Machines_ListBySubscription.json" + } + }, + "x-ms-pageable":{ + "nextLinkName":"nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/extensions/{extensionName}":{ + "put":{ + "tags":[ + "MachineExtensions" + ], + "operationId":"MachineExtensions_CreateOrUpdate", + "description":"The operation to create or update the extension.", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine where the extension should be created or updated." + }, + { + "name":"extensionName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine extension." + }, + { + "name":"extensionParameters", + "in":"body", + "required":true, + "schema":{ + "$ref":"#/definitions/MachineExtension" + }, + "description":"Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/MachineExtension" + } + }, + "202":{ + "description":"HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/PUTExtension.json" + } + }, + "x-ms-long-running-operation":true + }, + "patch":{ + "tags":[ + "MachineExtensions" + ], + "operationId":"MachineExtensions_Update", + "description":"The operation to create or update the extension.", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine where the extension should be created or updated." + }, + { + "name":"extensionName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine extension." + }, + { + "name":"extensionParameters", + "in":"body", + "required":true, + "schema":{ + "$ref":"#/definitions/MachineExtensionUpdate" + }, + "description":"Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/MachineExtension" + } + }, + "202":{ + "description":"Accepted" + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/UpdateExtension.json" + } + }, + "x-ms-long-running-operation":true + }, + "delete":{ + "tags":[ + "MachineExtensions" + ], + "operationId":"MachineExtensions_Delete", + "description":"The operation to delete the extension.", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine where the extension should be deleted." + }, + { + "name":"extensionName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine extension." + }, + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"OK" + }, + "202":{ + "description":"Accepted" + }, + "204":{ + "description":"No Content" + } + }, + "x-ms-long-running-operation":true, + "x-ms-examples":{ + } + }, + "get":{ + "tags":[ + "MachineExtensions" + ], + "operationId":"MachineExtensions_Get", + "description":"The operation to get the extension.", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine containing the extension." + }, + { + "name":"extensionName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine extension." + }, + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/MachineExtension" + } + } + }, + "x-ms-examples": { + "GET Machine Extension": { + "$ref": "./examples/GETExtension.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/extensions":{ + "get":{ + "tags":[ + "MachineExtensions" + ], + "operationId":"MachineExtensions_List", + "description":"The operation to get all extensions of a non-Azure machine", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"name", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the machine containing the extension." + }, + { + "name":"$expand", + "in":"query", + "required":false, + "type":"string", + "description":"The expand expression to apply on the operation." + }, + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/MachineExtensionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GET all Machine Extensions": { + "$ref": "./examples/LISTExtension.json" + } + } + } + }, + "/providers/Microsoft.HybridCompute/operations":{ + "get":{ + "tags":[ + "operations" + ], + "operationId":"Operations_List", + "description":"Gets a list of hybrid compute operations.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + } + ], + "responses":{ + "200":{ + "description":"OK", + "schema":{ + "$ref":"#/definitions/OperationListResult" + } + }, + "default":{ + "description":"Error response describing why the operation failed.", + "schema":{ + "$ref":"#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable":{ + "nextLinkName":null + } + } + } + }, + "definitions":{ + "OperationListResult":{ + "properties":{ + "value":{ + "type":"array", + "readOnly":true, + "items":{ + "$ref":"#/definitions/OperationValue" + }, + "description":"The list of compute operations" + } + }, + "description":"The List Compute Operation operation response." + }, + "OperationValue":{ + "properties":{ + "origin":{ + "type":"string", + "readOnly":true, + "description":"The origin of the compute operation." + }, + "name":{ + "type":"string", + "readOnly":true, + "description":"The name of the compute operation." + }, + "display":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/OperationValueDisplay", + "description":"Display properties" + } + }, + "description":"Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay":{ + "properties":{ + "operation":{ + "type":"string", + "readOnly":true, + "description":"The display name of the compute operation." + }, + "resource":{ + "type":"string", + "readOnly":true, + "description":"The display name of the resource the operation applies to." + }, + "description":{ + "type":"string", + "readOnly":true, + "description":"The description of the operation." + }, + "provider":{ + "type":"string", + "readOnly":true, + "description":"The resource provider for the operation." + } + }, + "description":"Describes the properties of a Hybrid Compute Operation Value Display." + }, + "OSProfile":{ + "readOnly":true, + "properties":{ + "computerName":{ + "type":"string", + "readOnly":true, + "description":"Specifies the host OS name of the hybrid machine." + } + }, + "description":"Specifies the operating system settings for the hybrid machine." + }, + "MachineProperties":{ + "properties":{ + "osProfile":{ + "$ref":"#/definitions/OSProfile", + "description":"Specifies the operating system settings for the hybrid machine." + }, + "provisioningState":{ + "readOnly":true, + "type":"string", + "description":"The provisioning state, which only appears in the response." + }, + "status":{ + "readOnly":true, + "type":"string", + "description":"The status of the hybrid machine agent.", + "enum":[ + "Connected", + "Disconnected", + "Error" + ], + "x-ms-enum":{ + "name":"StatusTypes", + "modelAsString":false + } + }, + "lastStatusChange":{ + "readOnly":true, + "type":"string", + "format":"date-time", + "description":"The time of the last status change." + }, + "errorDetails":{ + "readOnly":true, + "type":"array", + "items":{ + "$ref":"#/definitions/ErrorDetail" + }, + "description":"Details about the error state." + }, + "agentVersion":{ + "readOnly":true, + "type":"string", + "description":"The hybrid machine agent full version." + }, + "vmId":{ + "readOnly":true, + "type":"string", + "description":"Specifies the hybrid machine unique ID." + }, + "displayName":{ + "readOnly":true, + "type":"string", + "description":"Specifies the hybrid machine display name." + }, + "machineFqdn":{ + "readOnly":true, + "type":"string", + "description":"Specifies the hybrid machine FQDN." + }, + "physicalLocation":{ + "type":"string", + "description":"Resource's Physical Location" + }, + "clientPublicKey":{ + "type":"string", + "description":"Public Key that the client provides to be used during initial resource onboarding" + }, + "osName":{ + "readOnly":true, + "type":"string", + "description":"The Operating System running on the hybrid machine." + }, + "osVersion":{ + "readOnly":true, + "type":"string", + "description":"The version of Operating System running on the hybrid machine." + }, + "extensions":{ + "type":"array", + "items":{ + "$ref":"#/definitions/MachineExtensionInstanceView" + }, + "description":"Machine Extensions information" + } + }, + "description":"Describes the properties of a hybrid machine." + }, + "MachineReconnectProperties":{ + "properties":{ + "vmId":{ + "type":"string", + "description":"Specifies the hybrid machine unique ID." + }, + "clientPublicKey":{ + "type":"string", + "description":"Public Key that the client provides to be used during initial resource onboarding." + } + }, + "description":"Describes the properties required to reconnect a hybrid machine." + }, + "MachineUpdateProperties":{ + "properties":{ + "physicalLocation":{ + "type":"string", + "description":"Resource's Physical Location" + } + }, + "description":"Describes the ARM updatable properties of a hybrid machine." + }, + "Machine":{ + "properties":{ + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/MachineProperties", + "description":"Hybrid Compute Machine properties" + } + }, + "allOf":[ + { + "$ref":"#/definitions/Resource" + } + ], + "description":"Describes a hybrid machine." + }, + "MachineUpdate":{ + "properties":{ + "identity":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/Identity", + "description":"Hybrid Compute Machine Managed Identity" + }, + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/MachineUpdateProperties", + "description":"Hybrid Compute Machine properties" + } + }, + "allOf":[ + { + "$ref":"#/definitions/UpdateResource" + } + ], + "description":"Describes a hybrid machine Update." + }, + "MachineReconnect":{ + "properties":{ + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/MachineReconnectProperties", + "description":"Hybrid Compute Machine properties" + } + }, + "description":"Describes a hybrid machine reconnect." + }, + "MachineListResult":{ + "properties":{ + "value":{ + "type":"array", + "items":{ + "$ref":"#/definitions/Machine" + }, + "description":"The list of hybrid machines." + }, + "nextLink":{ + "type":"string", + "description":"The URI to fetch the next page of Machines. Call ListNext() with this URI to fetch the next page of hybrid machines." + } + }, + "required":[ + "value" + ], + "description":"The List hybrid machine operation response." + }, + "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", + "x-ms-mutability":[ + "create", + "read" + ] + }, + "tags":{ + "type":"object", + "additionalProperties":{ + "type":"string" + }, + "description":"Resource tags" + }, + "identity":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/Identity", + "description":"Hybrid Compute Machine Managed Identity" + } + }, + "required":[ + "location" + ], + "x-ms-azure-resource":true + }, + "UpdateResource":{ + "description":"The Update Resource model definition.", + "properties":{ + "tags":{ + "type":"object", + "additionalProperties":{ + "type":"string" + }, + "description":"Resource tags" + } + } + }, + "ErrorDetail":{ + "title":"Error details.", + "type":"object", + "properties":{ + "code":{ + "description":"The error's code.", + "type":"string" + }, + "message":{ + "description":"A human readable error message.", + "type":"string" + }, + "target":{ + "description":"Indicates which property in the request is responsible for the error.", + "type":"string" + }, + "details":{ + "description":"Additional error details.", + "type":"array", + "items":{ + "$ref":"#/definitions/ErrorDetail" + } + } + }, + "required":[ + "code", + "message" + ] + }, + "ErrorResponse":{ + "title":"Error response.", + "description":"Contains details when the response code indicates an error.", + "type":"object", + "properties":{ + "error":{ + "description":"The error details.", + "$ref":"#/definitions/ErrorDetail" + } + }, + "required":[ + "error" + ] + }, + "Identity":{ + "title":"Managed Identity.", + "type":"object", + "properties":{ + "type":{ + "description":"The identity type.", + "type":"string" + }, + "principalId":{ + "readOnly":true, + "description":"The identity's principal id.", + "type":"string" + }, + "tenantId":{ + "readOnly":true, + "description":"The identity's tenant id.", + "type":"string" + } + } + }, + "MachineExtension":{ + "properties":{ + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/MachineExtensionProperties", + "description":"Describes Machine Extension Properties." + } + }, + "allOf":[ + { + "$ref":"#/definitions/Resource" + } + ], + "description":"Describes a Machine Extension." + }, + "MachineExtensionUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MachineExtensionUpdateProperties", + "description":"Describes Machine Extension Update Properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Machine Extension Update." + }, + "MachineExtensionProperties":{ + "properties":{ + "forceUpdateTag":{ + "type":"string", + "description":"How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher":{ + "type":"string", + "description":"The name of the extension handler publisher." + }, + "type":{ + "type":"string", + "description":"Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion":{ + "type":"string", + "description":"Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion":{ + "type":"boolean", + "description":"Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings":{ + "type":"object", + "description":"Json formatted public settings for the extension." + }, + "protectedSettings":{ + "type":"object", + "description":"The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState":{ + "readOnly":true, + "type":"string", + "description":"The provisioning state, which only appears in the response." + }, + "instanceView":{ + "$ref":"#/definitions/MachineExtensionInstanceView", + "description":"The machine extension instance view." + } + }, + "description":"Describes the properties of a Machine Extension." + }, + "MachineExtensionUpdateProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineExtensionInstanceView":{ + "properties":{ + "name":{ + "type":"string", + "description":"The machine extension name." + }, + "type":{ + "type":"string", + "description":"Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion":{ + "type":"string", + "description":"Specifies the version of the script handler." + }, + "status":{ + "properties":{ + "code":{ + "type":"string", + "description":"The status code." + }, + "level":{ + "type":"string", + "description":"The level code.", + "enum":[ + "Info", + "Warning", + "Error" + ], + "x-ms-enum":{ + "name":"StatusLevelTypes", + "modelAsString":false + } + }, + "displayStatus":{ + "type":"string", + "description":"The short localizable label for the status." + }, + "message":{ + "type":"string", + "description":"The detailed status message, including for alerts and error messages." + }, + "time":{ + "type":"string", + "format":"date-time", + "description":"The time of the status." + } + }, + "description":"Instance view status." + } + }, + "description":"Describes the Machine Extension Instance View." + }, + "MachineExtensionsListResult":{ + "properties":{ + "value":{ + "type":"array", + "items":{ + "$ref":"#/definitions/MachineExtension" + }, + "description":"The list of extensions" + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of machine extensions. Call ListNext() with this to fetch the next page of extensions." + } + }, + "description":"Describes the Machine Extensions List Result." + } + }, + "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." + } + } + } \ No newline at end of file diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/GETExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/GETExtension.json new file mode 100644 index 000000000000..79cb2c875d27 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/GETExtension.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "extensionName": "MMA", + "api-version": "2019-08-02" + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "type": "string", + "location": "string", + "properties": { + "forceUpdateTag": "string", + "publisher": "string", + "type": "string", + "typeHandlerVersion": "string", + "autoUpgradeMinorVersion": true, + "settings": {}, + "protectedSettings": {}, + "provisioningState": "string", + "instanceView": { + "name": "string", + "type": "string", + "typeHandlerVersion": "string", + "status": { + "code": "string", + "level": "Info", + "displayStatus": "string", + "message": "string", + "time": "2019-08-08T20:42:10.999Z" + } + } + } + } + } + } + } \ No newline at end of file diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/LISTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/LISTExtension.json new file mode 100644 index 000000000000..36a2fe4ad836 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/LISTExtension.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-08-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "string", + "name": "string", + "type": "string", + "location": "string", + "properties": { + "forceUpdateTag": "string", + "publisher": "string", + "type": "string", + "typeHandlerVersion": "string", + "autoUpgradeMinorVersion": true, + "settings": {}, + "protectedSettings": {}, + "provisioningState": "string", + "instanceView": { + "name": "string", + "type": "string", + "typeHandlerVersion": "string", + "status": { + "code": "string", + "level": "Info", + "displayStatus": "string", + "message": "string", + "time": "2019-08-13T17:18:57.405Z" + } + } + } + } + ], + "nextLink": "string" + } + } + } + } diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_CreateOrUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_CreateOrUpdate.json new file mode 100644 index 000000000000..123cd8f62b98 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_CreateOrUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-08-02", + "parameters": "string", + "location": "eastus2euap", + "properties": { + "vmId": "string", + "physicalLocation": "redmond", + "clientPublicKey": "string" + }, + "identity": { + "Type": "SystemAssigned" + } + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "string", + "physicalLocation": "string", + "clientPublicKey": "string" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Delete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Delete.json new file mode 100644 index 000000000000..3f2fb9421e7c --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-08-02-preview" + }, + "responses": { + "200": { + }, + "204": { } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Get.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Get.json new file mode 100644 index 000000000000..d59ae778ca80 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-08-02-preview" + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "location": "string", + "tags": { }, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "string", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "string", + "physicalLocation": "", + "clientPublicKey": "string" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListByResourceGroup.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListByResourceGroup.json new file mode 100644 index 000000000000..c4b3eccaaacb --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListByResourceGroup.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-08-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "string", + "name": "string", + "type": "string", + "location": "string" + } + ], + "nextLink": "string" + } + } + } + } diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListBySubscription.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListBySubscription.json new file mode 100644 index 000000000000..1358bfc3c944 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_ListBySubscription.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-08-02" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "string", + "name": "string", + "type": "string", + "location": "string" + } + ], + "nextLink": "string" + } + } + } + } diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Reconnect.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Reconnect.json new file mode 100644 index 000000000000..52698205004d --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Reconnect.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-08-02", + "location": "eastus2euap", + "parameters": "string", + "properties": { + "vmId": "string", + "physicalLocation": "redmond", + "clientPublicKey": "string" + }, + "identity": { + "Type": "SystemAssigned" + } + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "string", + "physicalLocation": "string", + "clientPublicKey": "string" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Update.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Update.json new file mode 100644 index 000000000000..b76dae837072 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/Machines_Update.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-08-02", + "location": "eastus2euap", + "parameters": "string", + "properties": { + "physicalLocation": "newLocation" + }, + "identity": { + "Type": "SystemAssigned" + } + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "string", + "tenantId": "string" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "string", + "physicalLocation": "string", + "clientPublicKey": "string" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/PUTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/PUTExtension.json new file mode 100644 index 000000000000..cde51ea1d8cf --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/PUTExtension.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "extensionName": "MMA", + "api-version": "2019-08-02", + "extensionParameters": { + "location": "string", + "properties": { + "forceUpdateTag": "false", + "publisher": "Publisher1", + "type": "string", + "typeHandlerVersion": "1.0", + "autoUpgradeMinorVersion": true, + "settings": {}, + "protectedSettings": {}, + "instanceView": { + "name": "string", + "type": "string", + "typeHandlerVersion": "string", + "status": { + "code": "string", + "level": "Info", + "displayStatus": "string", + "message": "string", + "time": "2019-08-08T20:36:46.620Z" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "type": "string", + "location": "string", + "properties": { + "forceUpdateTag": "string", + "publisher": "string", + "type": "string", + "typeHandlerVersion": "string", + "autoUpgradeMinorVersion": true, + "settings": {}, + "protectedSettings": {}, + "provisioningState": "string", + "instanceView": { + "name": "string", + "type": "string", + "typeHandlerVersion": "string", + "status": { + "code": "string", + "level": "Info", + "displayStatus": "string", + "message": "string", + "time": "2019-08-08T20:42:10.999Z" + } + } + } + } + }, + "202": { + } + } + } diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/UpdateExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/UpdateExtension.json new file mode 100644 index 000000000000..a4698159a7e5 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2019-08-02/examples/UpdateExtension.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "extensionName": "MMA", + "api-version": "2019-08-02", + "extensionParameters": { + "properties": { + "forceUpdateTag": "false", + "publisher": "Publisher1", + "type": "string", + "typeHandlerVersion": "1.0", + "autoUpgradeMinorVersion": true, + "settings": {}, + "protectedSettings": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "string", + "name": "string", + "type": "string", + "location": "string", + "properties": { + "forceUpdateTag": "string", + "publisher": "string", + "type": "string", + "typeHandlerVersion": "string", + "autoUpgradeMinorVersion": true, + "settings": {}, + "protectedSettings": {}, + "provisioningState": "string", + "instanceView": { + "name": "string", + "type": "string", + "typeHandlerVersion": "string", + "status": { + "code": "string", + "level": "Info", + "displayStatus": "string", + "message": "string", + "time": "2019-08-08T20:42:10.999Z" + } + } + } + } + }, + "202": { + } + } + } diff --git a/specification/hybridcompute/resource-manager/readme.md b/specification/hybridcompute/resource-manager/readme.md new file mode 100644 index 000000000000..afaf5eebeb16 --- /dev/null +++ b/specification/hybridcompute/resource-manager/readme.md @@ -0,0 +1,183 @@ +# HybridCompute + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for HybridCompute RP. + + + +--- +## Getting Started +To build the SDK for HybridCompute, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + +### Basic Information +These are the global settings for the HybridCompute API. + +``` yaml +openapi-type: arm +tag: package-2019-08 +``` + +### Tag: package-2019-03 + +These settings apply only when `--tag=package-2019-03` is specified on the command line. + +``` yaml $(tag) == 'package-2019-03' +input-file: +- Microsoft.HybridCompute/preview/2019-03-18/HybridCompute.json +``` + +### Tag: package-2019-08 + +These settings apply only when `--tag=package-2019-08` is specified on the command line. + +``` yaml $(tag) == 'package-2019-08' +input-file: +- Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json +``` + +--- +# Code Generation + + +--- +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Management.HybridCompute + output-folder: $(csharp-sdks-folder)/HybridCompute/Microsoft.Azure.Management.HybridCompute/src/Generated + clear-output-folder: true +directive: + - remove-operation: + - Machines_Reconnect + - Machines_CreateOrUpdate + - Machines_Update + - Machines_Delete +``` + +## PowerShell + +``` yaml $(powershell) +powershell: + namespace: Microsoft.Azure.Management.HybridCompute + output-folder: generated + clear-output-folder: true +directive: + - remove-operation: + - Machines_Reconnect + - Machines_CreateOrUpdate + - Machines_Update + - Machines_Delete +``` + + +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.hybridcompute + package-name: azure-mgmt-hybridcompute + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/hybridcompute/azure-mgmt-hybridcompute/azure/mgmt/hybridcompute +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-mgmt-hybridcompute +directive: + - remove-operation: + - Machines_Reconnect + - Machines_CreateOrUpdate + - Machines_Update + - Machines_Delete +``` + +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + clear-output-folder: true + namespace: hybridcompute +``` + + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2019-03 +``` + +### Tag: package-2019-03 and go + +These settings apply only when `--tag=package-2019-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2019-03' && $(go) +output-folder: $(go-sdk-folder)/services/preview/hybridcompute/mgmt/2019-03-18-preview/hybridcompute +``` + +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.hybridcompute +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-hybridcompute +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2019-03 +``` + +### Tag: package-2019-03 and java + +These settings apply only when `--tag=package-2019-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.hybridcompute.v2019_03_18 + output-folder: $(azure-libraries-for-java-folder)/hybridcompute/resource-manager/v2019_03_18 + +regenerate-manager: true +generate-interface: true +```