From d511dcdff91a6c48b7c9da8e09cbc3e3919f1848 Mon Sep 17 00:00:00 2001 From: anvyas <94568811+anvyas@users.noreply.github.com> Date: Tue, 14 Dec 2021 19:00:36 -0800 Subject: [PATCH] New API version for RP Microsoft.Experimentation (#5711) * Base commit with api version 2019-11-01-preview * Changes for api version 2021-11-01-preview * Adding ReadMe * Renaming file * Updating example * Updating experimentation.json to update properties object * Updating experimentation.json to update properties object * Updating experimentation.json to update properties object * Updating examples to add a new property Co-authored-by: Anshuman Vyas --- .../examples/ExperimentWorkspaceGet.json | 23 + .../ExperimentWorkspaces_CreateOrUpdate.json | 39 ++ .../examples/ExperimentWorkspaces_Delete.json | 13 + .../examples/ExperimentWorkspaces_List.json | 48 ++ ...erimentWorkspaces_ListByResourceGroup.json | 37 + .../ExperimentWorkspaces_OperationsList.json | 26 + .../examples/ExperimentWorkspaces_Patch.json | 31 + .../2021-11-01-preview/experimentation.json | 651 ++++++++++++++++++ .../resource-manager/readme.az.md | 28 + .../resource-manager/readme.cli.md | 1 + .../resource-manager/readme.csharp.md | 15 + .../resource-manager/readme.go.md | 11 + .../resource-manager/readme.md | 78 +++ .../resource-manager/readme.python.md | 23 + .../resource-manager/readme.typescript.md | 14 + 15 files changed, 1038 insertions(+) create mode 100644 specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaceGet.json create mode 100644 specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_CreateOrUpdate.json create mode 100644 specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_Delete.json create mode 100644 specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_List.json create mode 100644 specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_ListByResourceGroup.json create mode 100644 specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_OperationsList.json create mode 100644 specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_Patch.json create mode 100644 specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/experimentation.json create mode 100644 specification/experimentation/resource-manager/readme.az.md create mode 100644 specification/experimentation/resource-manager/readme.cli.md create mode 100644 specification/experimentation/resource-manager/readme.csharp.md create mode 100644 specification/experimentation/resource-manager/readme.go.md create mode 100644 specification/experimentation/resource-manager/readme.md create mode 100644 specification/experimentation/resource-manager/readme.python.md create mode 100644 specification/experimentation/resource-manager/readme.typescript.md diff --git a/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaceGet.json b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaceGet.json new file mode 100644 index 000000000000..4ad89a12d725 --- /dev/null +++ b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaceGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "experimentWorkspaceName": "expWorkspace345", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Experimentation/experimentWorkspaces/expWorkspace345", + "name": "expWorkspace345", + "type": "Microsoft.Experimentation/experimentWorkspaces", + "location": "West US 2", + "properties": { + "expWorkspaceId": "02270d43-f68a-401b-b526-86942525c350", + "afdTasUrl": "https://test-exp-s2s.msedge.net/exptas194/02270d43-f68a-401b-b526-86942525c350-testanvyas6/api/v1/tas", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_CreateOrUpdate.json b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_CreateOrUpdate.json new file mode 100644 index 000000000000..80db4e2149c2 --- /dev/null +++ b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_CreateOrUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "experimentWorkspaceName": "expWorkspace6", + "api-version": "2021-11-01-preview", + "parameters": { + "location": "eastus2euap" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Experimentation/experimentWorkspaces/expWorkspace6", + "name": "expWorkspace6", + "type": "Microsoft.Experimentation/experimentWorkspaces", + "location": "eastus2euap", + "properties": { + "expWorkspaceId": "02270d43-f68a-401b-b526-86942525c351", + "afdTasUrl": "https://test-exp-s2s.msedge.net/exptas194/12270d43-f68a-401b-b526-86942525c350-testanvyas6/api/v1/tas", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Experimentation/experimentWorkspaces/expWorkspace6", + "name": "expWorkspace6", + "type": "Microsoft.Experimentation/experimentWorkspaces", + "location": "eastus2euap", + "properties": { + "expWorkspaceId": "02270d43-f68a-401b-b526-86942525c352", + "afdTasUrl": "https://test-exp-s2s.msedge.net/exptas194/02270d43-f68a-401b-b526-86942525c350-testanvyas7/api/v1/tas", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_Delete.json b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_Delete.json new file mode 100644 index 000000000000..76545ddb81f0 --- /dev/null +++ b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "experimentWorkspaceName": "expWorkspace345", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_List.json b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_List.json new file mode 100644 index 000000000000..4cbd52b69a6c --- /dev/null +++ b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_List.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Experimentation/experimentWorkspaces/expWorkspace345", + "name": "expWorkspace345", + "type": "Microsoft.Experimentation/experimentWorkspaces", + "location": "West US 2", + "properties": { + "expWorkspaceId": "02270d43-f68a-401b-b526-86942525c352", + "afdTasUrl": "https://test-exp-s2s.msedge.net/exptas194/02270d43-f68a-401b-b526-86942525c350-testanvyas6/api/v1/tas", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Experimentation/experimentWorkspaces/expWorkspace2", + "name": "expWorkspace2", + "type": "Microsoft.Experimentation/experimentWorkspaces", + "location": "West US 2", + "properties": { + "expWorkspaceId": "02270d43-f68a-401b-b526-86942525c353", + "afdTasUrl": "https://test-exp-s2s.msedge.net/exptas194/02270d43-f68a-401b-b526-86942525c350-testanvyas7/api/v1/tas", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Experimentation/experimentWorkspaces/expWorkspace3", + "name": "expWorkspace3", + "type": "Microsoft.Experimentation/experimentWorkspaces", + "location": "West US 2", + "properties": { + "expWorkspaceId": "02270d43-f68a-401b-b526-86942525c354", + "afdTasUrl": "https://test-exp-s2s.msedge.net/exptas194/02270d43-f68a-401b-b526-86942525c350-testanvyas8/api/v1/tas", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_ListByResourceGroup.json b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_ListByResourceGroup.json new file mode 100644 index 000000000000..4cb44c0e433d --- /dev/null +++ b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_ListByResourceGroup.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Experimentation/experimentWorkspaces/expWorkspace345", + "name": "expWorkspace345", + "type": "Microsoft.Experimentation/experimentWorkspaces", + "location": "West US 2", + "properties": { + "expWorkspaceId": "02270d43-f68a-401b-b526-86942525c350", + "afdTasUrl": "https://test-exp-s2s.msedge.net/exptas194/02270d43-f68a-401b-b526-86942525c350-testanvyas6/api/v1/tas", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Experimentation/experimentWorkspaces/expWorkspace2", + "name": "expWorkspace2", + "type": "Microsoft.Experimentation/experimentWorkspaces", + "location": "West US 2", + "properties": { + "expWorkspaceId": "02270d43-f68a-401b-b526-86942525c357", + "afdTasUrl": "https://test-exp-s2s.msedge.net/exptas194/02270d43-f68a-401b-b526-86942525c350-testanvyas7/api/v1/tas", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_OperationsList.json b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_OperationsList.json new file mode 100644 index 000000000000..0364f062eda0 --- /dev/null +++ b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_OperationsList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "aaaaaaaaa", + "isDataAction": true, + "display": { + "provider": "aaaaaaaa", + "resource": "aaaaaaaaaaaaaaaaa", + "operation": "aaaaaaaaaaaaaaaaaaaa", + "description": "aaaaaaaaaaaaaaaaaaaa" + }, + "origin": "aaaaaaaaaaaaaa", + "nextLink": "aaaaaaaa" + } + ], + "nextLink": "aaaaaaaaa" + } + } + } +} diff --git a/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_Patch.json b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_Patch.json new file mode 100644 index 000000000000..f774fafd1f59 --- /dev/null +++ b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/examples/ExperimentWorkspaces_Patch.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9871", + "experimentWorkspaceName": "expWorkspace345", + "api-version": "2021-11-01-preview", + "parameters": { + "tags": { + "newKey": "newVal" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9871/providers/Microsoft.Experimentation/experimentWorkspaces/expWorkspace345", + "name": "expWorkspace345", + "type": "Microsoft.Experimentation/experimentWorkspaces", + "location": "West US 2", + "tags": { + "supportTeam": "someteam@microsoft.com" + }, + "properties": { + "expWorkspaceId": "02270d43-f68a-401b-b526-86942525c350", + "afdTasUrl": "https://test-exp-s2s.msedge.net/exptas194/02270d43-f68a-401b-b526-86942525c350-testanvyas6/api/v1/tas", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/experimentation.json b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/experimentation.json new file mode 100644 index 000000000000..33a39e12d793 --- /dev/null +++ b/specification/experimentation/resource-manager/Microsoft.Experimentation/preview/2021-11-01-preview/experimentation.json @@ -0,0 +1,651 @@ +{ + "swagger": "2.0", + "info": { + "title": "Experimentation", + "description": "Rest API for Experimentation Service.", + "version": "2021-11-01-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": { + "/providers/Microsoft.Experimentation/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all of the available Experimentation resource provider API operations.", + "description": "Get the list of available Experimentation resource provider API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "name": "api-version", + "in": "query", + "description": "The version of the Experimentation resource provider API", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListOperations": { + "$ref": "./examples/ExperimentWorkspaces_OperationsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Experimentation/experimentWorkspaces/{experimentWorkspaceName}": { + "put": { + "tags": [ + "ExperimentWorkspace" + ], + "operationId": "experimentWorkspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "GetWorkspaces": { + "$ref": "./examples/ExperimentWorkspaces_CreateOrUpdate.json" + } + }, + "description": "Create an experiment workspace, or update an existing workspace", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/experimentWorkspaceParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExperimentWorkspaceCreate" + }, + "description": "Parameters supplied to the CreateOrUpdate experiment workspace operation." + } + ], + "responses": { + "201": { + "description": "The request to create the experiment workspace is accepted and is running asynchronously", + "schema": { + "$ref": "#/definitions/ExperimentWorkspace" + } + }, + "200": { + "description": "The request to update the experiment workspace is accepted and is running asynchronously", + "schema": { + "$ref": "#/definitions/ExperimentWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ExperimentWorkspace" + ], + "operationId": "experimentWorkspaces_Patch", + "x-ms-examples": { + "GetWorkspaces": { + "$ref": "./examples/ExperimentWorkspaces_Patch.json" + } + }, + "description": "Patch an experiment workspace", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/experimentWorkspaceParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExperimentWorkspacePatch" + }, + "description": "Parameters supplied to the Patch experiment workspace operation." + } + ], + "responses": { + "200": { + "description": "The experiment workspace is patched", + "schema": { + "$ref": "#/definitions/ExperimentWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ExperimentWorkspace" + ], + "operationId": "experimentWorkspaces_Delete", + "x-ms-examples": { + "GetWorkspaces": { + "$ref": "./examples/ExperimentWorkspaces_Delete.json" + } + }, + "description": "Deletes an experiment workspace", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/experimentWorkspaceParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "The request to delete the experiment workspace is accepted and is running asynchronously" + }, + "202": { + "description": "The request to delete the experiment workspace is accepted and is running asynchronously" + }, + "204": { + "description": "The experiment Workspace doesn't exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ExperimentWorkspace" + ], + "operationId": "experimentWorkspaces_Get", + "x-ms-examples": { + "GetWorkspaces": { + "$ref": "./examples/ExperimentWorkspaceGet.json" + } + }, + "description": "Gets an experiment workspace", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/experimentWorkspaceParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Get the experiment workspace for the specified name", + "schema": { + "$ref": "#/definitions/ExperimentWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Experimentation/experimentWorkspaces": { + "get": { + "tags": [ + "ExperimentWorkspace" + ], + "operationId": "experimentWorkspaces_ListByResourceGroup", + "x-ms-examples": { + "GetWorkspaces": { + "$ref": "./examples/ExperimentWorkspaces_ListByResourceGroup.json" + } + }, + "description": "Gets all experiment workspaces in a resource group.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Get all the experiment workspaces in the specified resource group", + "schema": { + "$ref": "#/definitions/ExperimentWorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Experimentation/experimentWorkspaces": { + "get": { + "tags": [ + "ExperimentWorkspace" + ], + "operationId": "experimentWorkspaces_List", + "x-ms-examples": { + "GetWorkspaces": { + "$ref": "./examples/ExperimentWorkspaces_List.json" + } + }, + "description": "Gets all experiment workspaces in the specified subscription.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Get all the experiment workspaces in the specified subscription", + "schema": { + "$ref": "#/definitions/ExperimentWorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ExperimentWorkspacePatch": { + "type": "object", + "description": "An experiment workspace properties.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + } + }, + "ExperimentWorkspace": { + "type": "object", + "description": "An experiment workspace.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ExperimentWorkspaceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData", + "readOnly": true + } + } + }, + "ExperimentWorkspaceProperties": { + "type": "object", + "description": "An experiment workspace properties.", + "properties": { + "expWorkspaceId": { + "description": "The id for experiment workspace", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state for the resource", + "type": "string", + "readOnly": true + }, + "afdTasUrl": { + "description": "Afd Tas Url", + "type": "string", + "readOnly": true + }, + "managementGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroup" + }, + "description": "Management Groups" + } + } + }, + "ExperimentWorkspaceCreate": { + "type": "object", + "description": "An experiment workspace.", + "properties": { + "location": { + "description": "Location of the experiment workspace", + "type": "string" + } + } + }, + "ExperimentWorkspaceCreateProperties": { + "type": "object", + "description": "An experiment workspace properties.", + "properties": { + "tasEndpoint": { + "description": "A treatment assignment service endpoint.", + "type": "string", + "readOnly": true + }, + "tasCustomSubscriptionId": { + "description": "Treatment Assignment Service custom subscription Id.", + "type": "string" + }, + "tasClusters": { + "type": "array", + "items": { + "$ref": "#/definitions/TASCluster" + }, + "description": "Treatment Assignment Clusters" + } + } + }, + "ManagementGroup": { + "type": "object", + "description": "A management group.", + "properties": { + "name": { + "description": "Management Group name.", + "type": "string" + }, + "tasEndpoint": { + "description": "A treatment assignment service endpoint.", + "type": "string", + "readOnly": true + }, + "tasCustomSubscriptionId": { + "description": "Treatment Assignment Service custom subscription Id.", + "type": "string" + }, + "tasClusters": { + "type": "array", + "items": { + "$ref": "#/definitions/TASCluster" + }, + "description": "Treatment Assignment Clusters" + } + } + }, + "TASCluster": { + "type": "object", + "description": "An experiment workspace.", + "properties": { + "region": { + "description": "Geographical region.", + "type": "string" + }, + "size": { + "description": "Cluster size.", + "type": "string" + } + } + }, + "ExperimentWorkspaceListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Results of the list operation.", + "items": { + "$ref": "#/definitions/ExperimentWorkspace" + } + }, + "nextLink": { + "type": "string", + "description": "Link for next set of locations." + } + }, + "description": "The response of list experiment workspace operation." + }, + "ExperimentWorkspacePatchParameters": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The tags that will be assigned to the experiment workspace. " + }, + "properties": { + "$ref": "#/definitions/ExperimentWorkspacePatchParameters", + "description": "Properties of the workspace" + } + }, + "description": "Parameters for patching the experiment workspace" + }, + "OperationListResult": { + "description": "Describes the result of the request to list Service Fabric operations.", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "List of Experimentation operations supported by the Microsoft.Experimentation resource provider.", + "items": { + "$ref": "#/definitions/OperationResult" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true + } + } + }, + "OperationResult": { + "description": "Available operation list result", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + }, + "display": { + "$ref": "#/definitions/AvailableOperationDisplay", + "description": "The object that represents the operation." + }, + "origin": { + "type": "string", + "description": "Origin result" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + } + }, + "AvailableOperationDisplay": { + "description": "Operation supported by Experimentation resource provider", + "type": "object", + "properties": { + "provider": { + "type": "string", + "description": "The name of the provider." + }, + "resource": { + "type": "string", + "description": "The resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "The operation that can be performed." + }, + "description": { + "type": "string", + "description": "Operation description" + } + } + }, + "ErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "ErrorDetails": { + "description": "The details of the error.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Gets subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request." + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "client" + }, + "experimentWorkspaceParameter": { + "name": "experimentWorkspaceName", + "in": "path", + "description": "The name of the experimentation workspace.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/experimentation/resource-manager/readme.az.md b/specification/experimentation/resource-manager/readme.az.md new file mode 100644 index 000000000000..fa6e37a278c8 --- /dev/null +++ b/specification/experimentation/resource-manager/readme.az.md @@ -0,0 +1,28 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +For new Resource Provider. It is highly recommended to onboard Azure CLI extensions. There's no differences in terms of customer usage. + +``` yaml $(az) && $(target-mode) != 'core' +az: + extensions: experimentation + namespace: azure.mgmt.experimentation + package-name: azure-mgmt-experimentation +az-output-folder: $(azure-cli-extension-folder)/src/experimentation +python-sdk-output-folder: "$(az-output-folder)/azext_experimentation/vendored_sdks/experimentation" +# add additional configuration here specific for Azure CLI +# refer to the faq.md for more details +``` + + + +This is for command modules that already in azure cli main repo. +``` yaml $(az) && $(target-mode) == 'core' +az: + extensions: experimentation + namespace: azure.mgmt.experimentation + package-name: azure-mgmt-experimentation +az-output-folder: $(azure-cli-folder)/src/azure-cli/azure/cli/command_modules/experimentation +python-sdk-output-folder: "$(az-output-folder)/vendored_sdks/experimentation" +``` \ No newline at end of file diff --git a/specification/experimentation/resource-manager/readme.cli.md b/specification/experimentation/resource-manager/readme.cli.md new file mode 100644 index 000000000000..c6cf6ad37ea4 --- /dev/null +++ b/specification/experimentation/resource-manager/readme.cli.md @@ -0,0 +1 @@ +## CLI Common Settings for all the command line tools \ No newline at end of file diff --git a/specification/experimentation/resource-manager/readme.csharp.md b/specification/experimentation/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..dd46c5034a1c --- /dev/null +++ b/specification/experimentation/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.Experimentation + output-folder: $(csharp-sdks-folder)/experimentation/management/Microsoft.Experimentation/GeneratedProtocol +``` \ No newline at end of file diff --git a/specification/experimentation/resource-manager/readme.go.md b/specification/experimentation/resource-manager/readme.go.md new file mode 100644 index 000000000000..31a0de7eef0f --- /dev/null +++ b/specification/experimentation/resource-manager/readme.go.md @@ -0,0 +1,11 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/resourcemanager/experimentation/armexperimentation +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +``` \ No newline at end of file diff --git a/specification/experimentation/resource-manager/readme.md b/specification/experimentation/resource-manager/readme.md new file mode 100644 index 000000000000..008d22b9fcb8 --- /dev/null +++ b/specification/experimentation/resource-manager/readme.md @@ -0,0 +1,78 @@ +# experimentation + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for experimentation. + +## 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 experimentation. + +```yaml +openapi-type: arm +openapi-subtype: rpaas +tag: package-2021-11-01-preview +``` + +### Tag: package-2021-11-01-preview + +These settings apply only when `--tag=package-2021-11-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-11-01-preview' +input-file: + - Microsoft.Experimentation/preview/2021-11-01-preview/experimentation.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-track2 + - repo: azure-sdk-for-js + - repo: azure-resource-manager-schemas + - repo: azure-cli-extensions +``` +## Az + +See configuration in [readme.az.md](./readme.az.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) \ No newline at end of file diff --git a/specification/experimentation/resource-manager/readme.python.md b/specification/experimentation/resource-manager/readme.python.md new file mode 100644 index 000000000000..959c036d1aec --- /dev/null +++ b/specification/experimentation/resource-manager/readme.python.md @@ -0,0 +1,23 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-experimentation +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)/experimentation/azure-mgmt-experimentation/azure/mgmt/experimentation +``` + +``` yaml $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/experimentation/azure-mgmt-experimentation +``` \ No newline at end of file diff --git a/specification/experimentation/resource-manager/readme.typescript.md b/specification/experimentation/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..39250762c4a1 --- /dev/null +++ b/specification/experimentation/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-experimentation" + output-folder: "$(typescript-sdks-folder)/sdk/experimentation/arm-experimentation" + payload-flattening-threshold: 1 + clear-output-folder: true + generate-metadata: true +``` \ No newline at end of file