diff --git a/custom-words.txt b/custom-words.txt index 1c2d0fe39019..1946d117681f 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -1775,6 +1775,7 @@ SCMS SCOM scopemap SCSV +SCVMM SDDL sdks SDWAN diff --git a/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/appliances.json b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/appliances.json new file mode 100644 index 000000000000..c3844954ed9c --- /dev/null +++ b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/appliances.json @@ -0,0 +1,709 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-10-31-preview", + "title": "appliances", + "description": "The appliances Rest API spec." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.ResourceConnector/operations": { + "get": { + "tags": [ + "appliances" + ], + "operationId": "Appliances_ListOperations", + "description": "Lists all available Appliances operations.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Operation details.", + "schema": { + "$ref": "#/definitions/applianceOperationsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Appliances operations": { + "$ref": "./examples/AppliancesListOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ResourceConnector/appliances": { + "get": { + "tags": [ + "appliances" + ], + "operationId": "Appliances_ListBySubscription", + "summary": "Gets a list of Appliances in a subscription.", + "description": "Gets a list of Appliances in the specified subscription. The operation returns properties of each Appliance", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/applianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Appliances by subscription": { + "$ref": "./examples/AppliancesListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ResourceConnector/appliances": { + "get": { + "tags": [ + "appliances" + ], + "operationId": "Appliances_ListByResourceGroup", + "summary": "Gets a list of Appliances in the specified subscription and resource group.", + "description": "Gets a list of Appliances in the specified subscription and resource group. The operation returns properties of each Appliance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/applianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Appliances by resource group": { + "$ref": "./examples/AppliancesListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ResourceConnector/appliances/{resourceName}": { + "get": { + "tags": [ + "appliances" + ], + "operationId": "Appliances_Get", + "summary": "Gets an Appliance.", + "description": "Gets the details of an Appliance with a specified resource group and name.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/appliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Appliance": { + "$ref": "./examples/AppliancesGet.json" + } + } + }, + "put": { + "tags": [ + "appliances" + ], + "operationId": "Appliances_CreateOrUpdate", + "summary": "Creates or updates an Appliance.", + "description": "Creates or updates an Appliance in the specified Subscription and Resource Group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/appliance" + }, + "description": "Parameters supplied to create or update an Appliance." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/appliance" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/appliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create/Update Appliance": { + "$ref": "./examples/AppliancesCreate_Update.json" + } + } + }, + "delete": { + "tags": [ + "appliances" + ], + "operationId": "Appliances_Delete", + "summary": "Deletes an Appliance.", + "description": "Deletes an Appliance with the specified Resource Name, Resource Group, and Subscription Id.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "NoContent. The response indicates the appliance resource is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Delete Appliance": { + "$ref": "./examples/AppliancesDelete.json" + } + } + }, + "patch": { + "tags": [ + "appliances" + ], + "operationId": "Appliances_Update", + "summary": "Updates an Appliance.", + "description": "Updates an Appliance with the specified Resource Name in the specified Resource Group and Subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/patchableAppliance" + }, + "description": "The updatable fields of an existing Appliance." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/appliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update Appliance": { + "$ref": "./examples/AppliancesPatch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ResourceConnector/appliances/{resourceName}/listClusterUserCredential": { + "post": { + "tags": [ + "appliances" + ], + "operationId": "Appliances_ListClusterUserCredential", + "summary": "Returns the cluster user credential.", + "description": "Returns the cluster user credentials for the dedicated appliance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/applianceListCredentialResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ListClusterUserCredentialAppliance": { + "$ref": "./examples/AppliancesListClusterUserCredential.json" + } + } + } + } + }, + "parameters": { + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 63, + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$", + "description": "Appliances name." + } + }, + "definitions": { + "HybridConnectionConfig": { + "description": "Contains the REP (rendezvous endpoint) and “Listener” access token from notification service (NS).", + "type": "object", + "properties": { + "expirationTime": { + "description": "Timestamp when this token will be expired.", + "type": "integer", + "readOnly": true, + "format": "int64" + }, + "hybridConnectionName": { + "description": "Name of the connection", + "type": "string", + "readOnly": true + }, + "relay": { + "description": "Name of the notification service.", + "type": "string", + "readOnly": true + }, + "token": { + "description": "Listener access token", + "type": "string", + "readOnly": true + } + } + }, + "Identity": { + "description": "Identity for the resource.", + "type": "object", + "properties": { + "principalId": { + "description": "The principal ID of resource identity.", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "The tenant ID of resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type.", + "type": "string", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": true + } + } + } + }, + "appliance": { + "description": "Appliances definition.", + "type": "object", + "properties": { + "identity": { + "$ref": "#/definitions/Identity", + "description": "Identity for the resource." + }, + "properties": { + "$ref": "#/definitions/applianceProperties", + "description": "The set of properties specific to an Appliance", + "x-ms-client-flatten": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ] + }, + "applianceCredentialKubeconfig": { + "description": "Cluster User Credential appliance.", + "type": "object", + "properties": { + "name": { + "description": "Name which contains the role of the kubeconfig.", + "type": "string", + "readOnly": true, + "enum": [ + "clusterUser" + ], + "x-ms-enum": { + "name": "AccessProfileType", + "modelAsString": true + } + }, + "value": { + "description": "Contains the kubeconfig value.", + "type": "string", + "readOnly": true + } + } + }, + "applianceListCredentialResults": { + "description": "The List Cluster User Credential appliance.", + "type": "object", + "properties": { + "hybridConnectionConfig": { + "$ref": "#/definitions/HybridConnectionConfig", + "description": "Contains the REP (rendezvous endpoint) and “Listener” access token from notification service (NS).", + "readOnly": true + }, + "kubeconfigs": { + "description": "The list of appliance kubeconfigs.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/applianceCredentialKubeconfig" + } + } + } + }, + "applianceListResult": { + "description": "The List Appliances operation response.", + "type": "object", + "properties": { + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of Appliances.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/appliance" + } + } + } + }, + "applianceOperation": { + "description": "Appliances operation.", + "type": "object", + "properties": { + "display": { + "$ref": "#/definitions/applianceOperationValueDisplay", + "description": "Describes the properties of an Appliances Operation Value Display.", + "x-ms-client-flatten": true + }, + "isDataAction": { + "description": "Is this Operation a data plane operation", + "type": "boolean", + "readOnly": true + }, + "name": { + "description": "The name of the compute operation.", + "type": "string", + "readOnly": true + }, + "origin": { + "description": "The origin of the compute operation.", + "type": "string", + "readOnly": true + } + } + }, + "applianceOperationValueDisplay": { + "description": "Describes the properties of an Appliances Operation Value Display.", + "type": "object", + "properties": { + "description": { + "description": "The description of the operation.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The display name of the compute operation.", + "type": "string", + "readOnly": true + }, + "provider": { + "description": "The resource provider for the operation.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The display name of the resource the operation applies to.", + "type": "string", + "readOnly": true + } + } + }, + "applianceOperationsList": { + "description": "Lists of Appliances operations.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "nextLink": { + "description": "Next page of operations.", + "type": "string" + }, + "value": { + "description": "Array of applianceOperation", + "type": "array", + "items": { + "$ref": "#/definitions/applianceOperation" + } + } + } + }, + "applianceProperties": { + "description": "Properties for an appliance.", + "type": "object", + "properties": { + "distro": { + "description": "Represents a supported Fabric/Infra. (AKSEdge etc...).", + "type": "string", + "default": "AKSEdge", + "enum": [ + "AKSEdge" + ], + "x-ms-enum": { + "name": "distro", + "modelAsString": true + } + }, + "infrastructureConfig": { + "description": "Contains infrastructure information about the Appliance", + "type": "object", + "properties": { + "provider": { + "description": "Information about the connected appliance.", + "type": "string", + "enum": [ + "VMWare", + "HCI", + "SCVMM" + ], + "x-ms-enum": { + "name": "provider", + "modelAsString": true + } + } + } + }, + "provisioningState": { + "description": "The current deployment or provisioning state, which only appears in the response.", + "type": "string", + "readOnly": true + }, + "publicKey": { + "description": "Certificates pair used to download MSI certificate from HIS", + "type": "string" + }, + "status": { + "description": "Appliance’s health and state of connection to on-prem", + "type": "string", + "readOnly": true, + "enum": [ + "WaitingForHeartbeat", + "Validating", + "Connected", + "Running" + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true + } + }, + "version": { + "description": "Version of the Appliance", + "type": "string", + "readOnly": true + } + } + }, + "patchableAppliance": { + "description": "The Appliances patchable resource definition.", + "type": "object", + "x-ms-azure-resource": true, + "x-ms-client-flatten": true, + "properties": { + "tags": { + "description": "Resource tags", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + } + } +} diff --git a/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesCreate_Update.json b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesCreate_Update.json new file mode 100644 index 000000000000..157a71d5d617 --- /dev/null +++ b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesCreate_Update.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2021-10-31-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "testresourcegroup", + "resourceName": "appliance01", + "parameters": { + "location": "West US", + "properties": { + "distro": "AKSEdge", + "infrastructureConfig": { + "provider": "VMWare" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.ResourceConnector/appliances/appliance01", + "name": "appliance01", + "type": "Microsoft.ResourceConnector/appliances", + "location": "West US", + "properties": { + "distro": "AKSEdge", + "version": "1.0.1", + "provisioningState": "Succeeded", + "status": "Connected", + "infrastructureConfig": { + "provider": "VMWare" + } + }, + "identity": { + "type": "SystemAssigned", + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "111111-1111-1111-1111-111111111111" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-04-24T18:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testrg/providers/Microsoft.ResourceConnector/appliances/appliance01", + "name": "appliance01", + "type": "Microsoft.ResourceConnector/appliances", + "location": "West US", + "properties": { + "distro": "AKSEdge", + "version": "1.0.1", + "provisioningState": "Creating", + "status": "WaitingForHeartbeat", + "infrastructureConfig": { + "provider": "VMWare" + } + }, + "identity": { + "type": "SystemAssigned", + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "111111-1111-1111-1111-111111111111" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-04-24T18:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" + } + } + } + } +} diff --git a/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesDelete.json b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesDelete.json new file mode 100644 index 000000000000..766417638455 --- /dev/null +++ b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2021-10-31-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "testresourcegroup", + "resourceName": "appliance01" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesGet.json b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesGet.json new file mode 100644 index 000000000000..15595687429a --- /dev/null +++ b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2021-10-31-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "testresourcegroup", + "resourceName": "appliance01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ResourceConnector/appliances/appliance01", + "name": "appliance01", + "type": "Microsoft.ResourceConnector/appliances", + "location": "West US", + "properties": { + "distro": "AKSEdge", + "version": "1.0.1", + "provisioningState": "Succeeded", + "status": "Connected", + "infrastructureConfig": { + "provider": "VMWare" + } + }, + "identity": { + "type": "SystemAssigned", + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "111111-1111-1111-1111-111111111111" + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-04-24T18:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" + } + } + } + } +} diff --git a/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesListByResourceGroup.json b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesListByResourceGroup.json new file mode 100644 index 000000000000..36291169c56e --- /dev/null +++ b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesListByResourceGroup.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2021-10-31-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "testresourcegroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ResourceConnector/appliances/appliance01", + "name": "appliance01", + "type": "Microsoft.ResourceConnector/appliances", + "location": "West US", + "properties": { + "distro": "AKSEdge", + "version": "1.0.1", + "provisioningState": "Succeeded", + "status": "Connected", + "infrastructureConfig": { + "provider": "VMWare" + } + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-04-24T18:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" + } + }, + { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ResourceConnector/appliances/appliance02", + "name": "appliance02", + "type": "Microsoft.ResourceConnector/appliances", + "location": "West US", + "properties": { + "distro": "AKSEdge", + "version": "1.0.1", + "provisioningState": "Succeeded", + "status": "Connected", + "infrastructureConfig": { + "provider": "VMWare" + } + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-04-24T18:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" + } + } + ] + } + } + } +} diff --git a/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesListBySubscription.json b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesListBySubscription.json new file mode 100644 index 000000000000..d68eae15d283 --- /dev/null +++ b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesListBySubscription.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2021-10-31-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ResourceConnector/appliances/appliance01", + "name": "appliance01", + "type": "Microsoft.ResourceConnector/appliances", + "location": "West US", + "properties": { + "distro": "AKSEdge", + "version": "1.0.1", + "provisioningState": "Succeeded", + "status": "Connected", + "infrastructureConfig": { + "provider": "VMWare" + } + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-04-24T18:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" + } + }, + { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ResourceConnector/appliances/appliance02", + "name": "appliance02", + "type": "Microsoft.ResourceConnector/appliances", + "location": "West US", + "properties": { + "distro": "AKSEdge", + "version": "1.0.1", + "provisioningState": "Succeeded", + "status": "Connected", + "infrastructureConfig": { + "provider": "VMWare" + } + }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-04-24T18:53:29.0928001Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-04-24T18:53:29.0928001Z" + } + } + ] + } + } + } +} diff --git a/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesListClusterUserCredential.json b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesListClusterUserCredential.json new file mode 100644 index 000000000000..2bc2ea8afaf8 --- /dev/null +++ b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesListClusterUserCredential.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-10-31-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "testresourcegroup", + "resourceName": "testresourcename" + }, + "responses": { + "200": { + "body": { + "hybridConnectionConfig": { + "expirationTime": 123456789, + "hybridConnectionName": "provider/type/bc36ffcf318d5bedfc05ba8b0628dba", + "token": "mockSecretOtherprovider/type/bc36ffcf318d5bedfc05ba91c157ReceiverToken", + "relay": "relayName" + }, + "kubeconfigs": [ + { + "name": "kubeconfigName1", + "value": "xxxxxxxxxxxxx" + } + ] + } + } + } +} diff --git a/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesListOperations.json b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesListOperations.json new file mode 100644 index 000000000000..33dd29fdc6a2 --- /dev/null +++ b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesListOperations.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2021-10-31-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.ResourceConnector/operations/read", + "display": { + "description": "Gets list of Available Operations for Appliances", + "operation": "List Available Operations for Appliances", + "provider": "Microsoft ResourceConnector", + "resource": "Operations" + }, + "origin": "user,system", + "isDataAction": false + }, + { + "name": "Microsoft.ResourceConnector/register/action", + "display": { + "description": "Registers the subscription for Appliance resource provider and enables the creation of Appliance.", + "operation": "Registers the Appliance Resource Provider", + "provider": "Microsoft ResourceConnector", + "resource": "Appliances Resource Provider" + }, + "origin": "user,system", + "isDataAction": false + }, + { + "name": "Microsoft.ResourceConnector/appliances/read", + "display": { + "description": "Gets an Appliance resource", + "operation": "Get Appliance", + "provider": "Microsoft ResourceConnector", + "resource": "Appliances" + }, + "origin": "user,system", + "isDataAction": false + }, + { + "name": "Microsoft.ResourceConnector/appliances/write", + "display": { + "description": "Creates or Updates Appliance resource", + "operation": "Create or Update Appliance", + "provider": "Microsoft ResourceConnector", + "resource": "Appliances" + }, + "origin": "user,system", + "isDataAction": false + }, + { + "name": "Microsoft.ResourceConnector/appliances/delete", + "display": { + "description": "Deletes Appliance resource", + "operation": "Delete Appliance", + "provider": "Microsoft ResourceConnector", + "resource": "Appliances" + }, + "origin": "user,system", + "isDataAction": false + }, + { + "name": "Microsoft.ResourceConnector/appliances/listClusterUserCredential", + "display": { + "description": "Get an appliance cluster user credential", + "operation": "List User Cluster Credential", + "provider": "Microsoft ResourceConnector", + "resource": "Appliances" + }, + "origin": "user,system", + "isDataAction": false + }, + { + "name": "Microsoft.ResourceConnector/locations/operationsstatus/read", + "display": { + "description": "Get result of Appliance operation", + "operation": "Get status of Appliance operation", + "provider": "Microsoft ResourceConnector", + "resource": "Appliance Operation Status" + }, + "origin": "user,system", + "isDataAction": false + }, + { + "name": "Microsoft.ResourceConnector/locations/operationresults/read", + "display": { + "description": "Get result of Appliance operation", + "operation": "Get the status of Appliance operation", + "provider": "Microsoft ResourceConnector", + "resource": "Appliance Operation Result" + }, + "origin": "user,system", + "isDataAction": false + } + ] + } + } + } +} diff --git a/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesPatch.json b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesPatch.json new file mode 100644 index 000000000000..462dc417a2f6 --- /dev/null +++ b/specification/resourceconnector/resource-manager/Microsoft.ResourceConnector/preview/2021-10-31-preview/examples/AppliancesPatch.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2021-10-31-preview", + "subscriptionId": "11111111-2222-3333-4444-555555555555", + "resourceGroupName": "testresourcegroup", + "resourceName": "appliance01", + "parameters": { + "tags": { + "key": "value" + } + }, + "identity": { + "type": "SystemAssigned" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/testresourcegroup/providers/Microsoft.ResourceConnector/appliances/appliance01", + "name": "appliance01", + "type": "Microsoft.ResourceConnector/appliances", + "location": "West US", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "status": "Validating", + "distro": "AKSEdge", + "version": "1.0.1", + "infrastructureConfig": { + "provider": "VMWare" + } + }, + "identity": { + "type": "SystemAssigned", + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "111111-1111-1111-1111-111111111111" + } + } + } + } +} diff --git a/specification/resourceconnector/resource-manager/readme.csharp.md b/specification/resourceconnector/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..efdf54c7d81a --- /dev/null +++ b/specification/resourceconnector/resource-manager/readme.csharp.md @@ -0,0 +1,15 @@ +## 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 + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.Azure.Management.ResourceConnector + output-folder: $(csharp-sdks-folder)/ResourceConnector/management/Microsoft.Azure.Management.ResourceConnector/GeneratedProtocol +``` diff --git a/specification/resourceconnector/resource-manager/readme.go.md b/specification/resourceconnector/resource-manager/readme.go.md new file mode 100644 index 000000000000..b2aaa8767b9d --- /dev/null +++ b/specification/resourceconnector/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## 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 +``` + +### Go multi-api + +```yaml $(go) && $(multiapi) +batch: + - tag: package-2021-10-31-preview +``` + +### Tag: package-2021-10-31-preview and go + +These settings apply only when `--tag=package-2021-10-31-preview --go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-2021-10-31-preview' && $(go) +namespace: resourceconnector +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-10-31-preview/$(namespace) +``` diff --git a/specification/resourceconnector/resource-manager/readme.md b/specification/resourceconnector/resource-manager/readme.md new file mode 100644 index 000000000000..2237cc28a268 --- /dev/null +++ b/specification/resourceconnector/resource-manager/readme.md @@ -0,0 +1,80 @@ +# Appliance + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for appliance. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the appliance. + +```yaml +name: appliances +openapi-type: arm +tag: package-2021-10-31-preview +``` + +### Tag: package-2021-10-31-preview + +These settings apply only when `--tag=package-2021-10-31-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-10-31-preview' +input-file: + - Microsoft.ResourceConnector/preview/2021-10-31-preview/appliances.json +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +```yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python-track2 + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-ruby + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_customLocation'] +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) diff --git a/specification/resourceconnector/resource-manager/readme.python.md b/specification/resourceconnector/resource-manager/readme.python.md new file mode 100644 index 000000000000..340ff3700bde --- /dev/null +++ b/specification/resourceconnector/resource-manager/readme.python.md @@ -0,0 +1,24 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +These settings apply only when `--track2` is specified on the command line. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-resourceconnector +no-namespace-folders: true +package-version: 1.0.0b1 +clear-output-folder: true +``` +``` yaml $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/resourceconnector/azure-mgmt-resourceconnector/azure/mgmt/resourceconnector/ +``` + +``` yaml $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/resourceconnector/azure-mgmt-resourceconnector +``` diff --git a/specification/resourceconnector/resource-manager/readme.ruby.md b/specification/resourceconnector/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..4b11b224da95 --- /dev/null +++ b/specification/resourceconnector/resource-manager/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_resource_connector +package-version: 2021-10-31-preview +azure-arm: true +``` + +### Tag: package-2021-10-31-preview and ruby + +These settings apply only when `--tag=package-2021-10-31-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2021-10-31-preview' && $(ruby) +namespace: Azure::ExtendedLocation::Mgmt::V2021-10-31-preview +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_resource_connector/lib +``` \ No newline at end of file diff --git a/specification/resourceconnector/resource-manager/readme.typescript.md b/specification/resourceconnector/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..a01014bcf30f --- /dev/null +++ b/specification/resourceconnector/resource-manager/readme.typescript.md @@ -0,0 +1,14 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-resourceconnector" + output-folder: "$(typescript-sdks-folder)/sdk/resourceconnector/arm-resourceconnector" + clear-output-folder: true + payload-flattening-threshold: 1 + generate-metadata: true +```