From e52ff8371193ebfcd2d2552fb2d22cfd40202915 Mon Sep 17 00:00:00 2001 From: Victoria Chen Date: Thu, 16 Jun 2022 14:21:03 -0700 Subject: [PATCH] Add new API version "2022-07-01" for CapabilityType --- .../2022-07-01-preview/capabilities.json | 262 ++++++ .../2022-07-01-preview/capabilityTypes.json | 131 +++ .../examples/CancelAExperiment.json | 17 + .../examples/CreateOrUpdateACapability.json | 35 + .../examples/CreateOrUpdateAExperiment.json | 108 +++ .../examples/CreateOrUpdateATarget.json | 45 ++ .../examples/DeleteACapability.json | 16 + .../examples/DeleteAExperiment.json | 12 + .../examples/DeleteATarget.json | 15 + .../examples/GetACapability.json | 32 + .../examples/GetACapabilityType.json | 30 + .../examples/GetAExperiment.json | 67 ++ .../GetAExperimentExecutionDetails.json | 67 ++ .../examples/GetAExperimentStatus.json | 24 + .../examples/GetATarget.json | 35 + .../examples/GetATargetType.json | 28 + .../examples/ListCapabilities.json | 36 + .../examples/ListCapabilityTypes.json | 34 + .../ListExperimentExecutionsDetails.json | 112 +++ .../examples/ListExperimentStatuses.json | 29 + .../ListExperimentsInAResourceGroup.json | 72 ++ .../ListExperimentsInASubscription.json | 71 ++ .../examples/ListTargetTypes.json | 33 + .../examples/ListTargets.json | 40 + .../examples/StartAExperiment.json | 17 + .../2022-07-01-preview/experiments.json | 534 +++++++++++++ .../2022-07-01-preview/operations.json | 70 ++ .../2022-07-01-preview/targetTypes.json | 125 +++ .../preview/2022-07-01-preview/targets.json | 250 ++++++ .../types/capabilities.json | 84 ++ .../types/capabilityTypes.json | 100 +++ .../2022-07-01-preview/types/common.json | 216 +++++ .../2022-07-01-preview/types/experiments.json | 756 ++++++++++++++++++ .../2022-07-01-preview/types/targetTypes.json | 88 ++ .../2022-07-01-preview/types/targets.json | 64 ++ .../chaos/resource-manager/readme.md | 141 +++- 36 files changed, 3763 insertions(+), 33 deletions(-) create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/capabilities.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/capabilityTypes.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CancelAExperiment.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CreateOrUpdateACapability.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CreateOrUpdateAExperiment.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CreateOrUpdateATarget.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/DeleteACapability.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/DeleteAExperiment.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/DeleteATarget.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetACapability.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetACapabilityType.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetAExperiment.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetAExperimentExecutionDetails.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetAExperimentStatus.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetATarget.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetATargetType.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListCapabilities.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListCapabilityTypes.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentExecutionsDetails.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentStatuses.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentsInAResourceGroup.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentsInASubscription.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListTargetTypes.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListTargets.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/StartAExperiment.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/experiments.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/operations.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/targetTypes.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/targets.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/capabilities.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/capabilityTypes.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/common.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/experiments.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/targetTypes.json create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/targets.json diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/capabilities.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/capabilities.json new file mode 100644 index 000000000000..0edfd78397de --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/capabilities.json @@ -0,0 +1,262 @@ +{ + "swagger": "2.0", + "info": { + "title": "Chaos Management", + "description": "Azure Chaos Resource Provider REST API", + "version": "2022-07-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": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}/capabilities": { + "get": { + "description": "Get a list of Capability resources that extend a Target resource..", + "tags": [ + "Capabilities" + ], + "operationId": "Capabilities_List", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/common.json#/parameters/parentProviderNamespace" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceType" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceName" + }, + { + "$ref": "./types/common.json#/parameters/targetName" + }, + { + "$ref": "./types/common.json#/parameters/continuationToken" + } + ], + "responses": { + "200": { + "description": "List of Capability resources returned if request was successful.", + "schema": { + "$ref": "./types/capabilities.json#/definitions/capabilityListResult" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all Capabilities that extend a virtual machine Target resource.": { + "$ref": "./examples/ListCapabilities.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}/capabilities/{capabilityName}": { + "get": { + "description": "Get a Capability resource that extends a Target resource.", + "tags": [ + "Capabilities" + ], + "operationId": "Capabilities_Get", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/common.json#/parameters/parentProviderNamespace" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceType" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceName" + }, + { + "$ref": "./types/common.json#/parameters/targetName" + }, + { + "$ref": "./types/common.json#/parameters/capabilityName" + } + ], + "responses": { + "200": { + "description": "Capability resource returned if request was successful.", + "schema": { + "$ref": "./types/capabilities.json#/definitions/capability" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a Capability that extends a virtual machine Target resource.": { + "$ref": "./examples/GetACapability.json" + } + } + }, + "delete": { + "description": "Delete a Capability that extends a Target resource.", + "tags": [ + "Capabilities" + ], + "operationId": "Capabilities_Delete", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/common.json#/parameters/parentProviderNamespace" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceType" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceName" + }, + { + "$ref": "./types/common.json#/parameters/targetName" + }, + { + "$ref": "./types/common.json#/parameters/capabilityName" + } + ], + "responses": { + "200": { + "description": "Capability resource deletion was successful." + }, + "204": { + "description": "Capability resource deletion was successful." + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a Capability that extends a virtual machine Target resource.": { + "$ref": "./examples/DeleteACapability.json" + } + } + }, + "put": { + "description": "Create or update a Capability resource that extends a Target resource.", + "tags": [ + "Capabilities" + ], + "operationId": "Capabilities_CreateOrUpdate", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/common.json#/parameters/parentProviderNamespace" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceType" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceName" + }, + { + "$ref": "./types/common.json#/parameters/targetName" + }, + { + "$ref": "./types/common.json#/parameters/capabilityName" + }, + { + "name": "capability", + "description": "Capability resource to be created or updated.", + "in": "body", + "required": true, + "schema": { + "$ref": "./types/capabilities.json#/definitions/capability" + } + } + ], + "responses": { + "200": { + "description": "Capability resource returned if request was successful.", + "schema": { + "$ref": "./types/capabilities.json#/definitions/capability" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create/update a Capability that extends a virtual machine Target resource.": { + "$ref": "./examples/CreateOrUpdateACapability.json" + } + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/capabilityTypes.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/capabilityTypes.json new file mode 100644 index 000000000000..d5d0eef17cac --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/capabilityTypes.json @@ -0,0 +1,131 @@ +{ + "swagger": "2.0", + "info": { + "title": "Chaos Management", + "description": "Azure Chaos Resource Provider REST API", + "version": "2022-07-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": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{locationName}/targetTypes/{targetTypeName}/capabilityTypes": { + "get": { + "description": "Get a list of Capability Type resources for given Target Type and location.", + "tags": [ + "CapabilityTypes" + ], + "operationId": "CapabilityTypes_List", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/locationName" + }, + { + "$ref": "./types/common.json#/parameters/targetTypeName" + }, + { + "$ref": "./types/common.json#/parameters/continuationToken" + } + ], + "responses": { + "200": { + "description": "List of Capability Type resources returned if request was successful.", + "schema": { + "$ref": "./types/capabilityTypes.json#/definitions/capabilityTypeListResult" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all Capability Types for a virtual machine Target resource on westus2 location.": { + "$ref": "./examples/ListCapabilityTypes.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{locationName}/targetTypes/{targetTypeName}/capabilityTypes/{capabilityTypeName}": { + "get": { + "description": "Get a Capability Type resource for given Target Type and location.", + "tags": [ + "Capabilities" + ], + "operationId": "CapabilityTypes_Get", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/locationName" + }, + { + "$ref": "./types/common.json#/parameters/targetTypeName" + }, + { + "$ref": "./types/common.json#/parameters/capabilityTypeName" + } + ], + "responses": { + "200": { + "description": "Capability Type resource returned if request was successful.", + "schema": { + "$ref": "./types/capabilityTypes.json#/definitions/capabilityType" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a Capability Type for a virtual machine Target resource on westus2 location.": { + "$ref": "./examples/GetACapabilityType.json" + } + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CancelAExperiment.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CancelAExperiment.json new file mode 100644 index 000000000000..01a8896b9ff9 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CancelAExperiment.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "experimentName": "exampleExperiment", + "api-version": "2022-07-01-preview" + }, + "responses": { + "202": { + "headers": {}, + "body": { + "name": "exampleExperiment", + "statusUrl": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/statuses/50734542-2e64-4e08-814c-cc0e7475f7e4" + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CreateOrUpdateACapability.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CreateOrUpdateACapability.json new file mode 100644 index 000000000000..2280e07a3d27 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CreateOrUpdateACapability.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "parentProviderNamespace": "Microsoft.Compute", + "parentResourceType": "virtualMachines", + "parentResourceName": "exampleVM", + "targetName": "Microsoft-VirtualMachine", + "capabilityName": "Shutdown-1.0", + "api-version": "2022-07-01-preview", + "capability": { + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0", + "type": "Microsoft.Chaos/targets/capabilities", + "name": "Shutdown-1.0", + "properties": { + "publisher": "Microsoft", + "targetType": "VirtualMachine", + "description": "Shutdown an Azure Virtual Machine for a defined period of time.", + "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json", + "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0" + }, + "systemData": { + "createdAt": "2020-05-14T05:08:38.4662189Z", + "lastModifiedAt": "2020-05-14T05:08:38.4662189Z" + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CreateOrUpdateAExperiment.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CreateOrUpdateAExperiment.json new file mode 100644 index 000000000000..80c0ba1e47a8 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CreateOrUpdateAExperiment.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "experimentName": "exampleExperiment", + "api-version": "2022-07-01-preview", + "experiment": { + "location": "centraluseuap", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "steps": [ + { + "name": "step1", + "branches": [ + { + "name": "branch1", + "actions": [ + { + "type": "Continuous", + "name": "urn:csci:provider:providername:Shutdown/1.0", + "selectorId": "selector1", + "duration": "PT10M", + "parameters": { + "restartWhenComplete": true + } + } + ] + } + ] + } + ], + "selectors": [ + { + "type": "List", + "id": "selector1", + "targets": [ + { + "type": "ChaosTarget", + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine" + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment", + "type": "Microsoft.Chaos/experiments", + "name": "exampleExperiment", + "location": "centraluseuap", + "identity": { + "type": "SystemAssigned", + "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56", + "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6" + }, + "properties": { + "steps": [ + { + "name": "step1", + "branches": [ + { + "name": "branch1", + "actions": [ + { + "type": "Continuous", + "name": "urn:csci:provider:providername:Shutdown/1.0", + "selectorId": "selector1", + "duration": "PT10M", + "parameters": { + "restartWhenComplete": true + } + } + ] + } + ] + } + ], + "selectors": [ + { + "type": "List", + "id": "selector1", + "targets": [ + { + "type": "ChaosTarget", + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine" + } + ] + } + ] + }, + "systemData": { + "createdAt": "2021-07-01T00:00:00.0Z", + "createdBy": "User", + "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976", + "lastModifiedAt": "2021-07-01T00:00:00.0Z", + "lastModifiedBy": "User", + "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976" + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CreateOrUpdateATarget.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CreateOrUpdateATarget.json new file mode 100644 index 000000000000..9bbb3620dc3a --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/CreateOrUpdateATarget.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "parentProviderNamespace": "Microsoft.Compute", + "parentResourceType": "virtualMachines", + "parentResourceName": "exampleVM", + "targetName": "Microsoft-Agent", + "api-version": "2022-07-01-preview", + "target": { + "properties": { + "identities": [ + { + "type": "CertificateSubjectIssuer", + "subject": "CN=example.subject" + } + ] + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-Agent", + "type": "Microsoft.Chaos/targets", + "name": "Microsoft-Agent", + "location": "centraluseuap", + "properties": { + "identities": [ + { + "type": "CertificateSubjectIssuer", + "subject": "CN=example.subject" + } + ], + "agentProfileId": "ac4e8251-fdc9-4277-8e87-dc57fe5794cf" + }, + "systemData": { + "createdAt": "2021-07-01T00:00:00.0Z", + "lastModifiedAt": "2021-07-01T00:00:00.0Z" + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/DeleteACapability.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/DeleteACapability.json new file mode 100644 index 000000000000..69d7003b8169 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/DeleteACapability.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "parentProviderNamespace": "Microsoft.Compute", + "parentResourceType": "virtualMachines", + "parentResourceName": "exampleVM", + "targetName": "Microsoft-VirtualMachine", + "capabilityName": "Shutdown-1.0", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/DeleteAExperiment.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/DeleteAExperiment.json new file mode 100644 index 000000000000..835fcfc2cada --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/DeleteAExperiment.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "experimentName": "exampleExperiment", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/DeleteATarget.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/DeleteATarget.json new file mode 100644 index 000000000000..0c118ae68849 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/DeleteATarget.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "parentProviderNamespace": "Microsoft.Compute", + "parentResourceType": "virtualMachines", + "parentResourceName": "exampleVM", + "targetName": "Microsoft-Agent", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetACapability.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetACapability.json new file mode 100644 index 000000000000..d8f5de126942 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetACapability.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "parentProviderNamespace": "Microsoft.Compute", + "parentResourceType": "virtualMachines", + "parentResourceName": "exampleVM", + "targetName": "Microsoft-VirtualMachine", + "capabilityName": "Shutdown-1.0", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0", + "type": "Microsoft.Chaos/targets/capabilities", + "name": "Shutdown-1.0", + "properties": { + "publisher": "Microsoft", + "targetType": "VirtualMachine", + "description": "Shutdown an Azure Virtual Machine for a defined period of time.", + "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json", + "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0" + }, + "systemData": { + "createdAt": "2020-05-14T05:08:38.4662189Z", + "lastModifiedAt": "2020-05-14T05:08:38.4662189Z" + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetACapabilityType.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetACapabilityType.json new file mode 100644 index 000000000000..af7cc3e73522 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetACapabilityType.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "locationName": "westus2", + "targetTypeName": "Microsoft-VirtualMachine", + "capabilityTypeName": "Shutdown-1.0", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-VirtualMachine/capabilityTypes/Shutdown-1.0", + "type": "Microsoft.Chaos/locations/targetTypes/capabilityTypes", + "name": "Shutdown-1.0", + "properties": { + "kind": "Fault", + "publisher": "Microsoft", + "targetType": "VirtualMachine", + "displayName": "Shutdown VM", + "description": "Shutdown an Azure Virtual Machine for a defined period of time.", + "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json", + "runtimeProperties": { + "kind": "continuous" + }, + "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0" + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetAExperiment.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetAExperiment.json new file mode 100644 index 000000000000..a0067956c943 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetAExperiment.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "experimentName": "exampleExperiment", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment", + "type": "Microsoft.Chaos/experiments", + "name": "exampleExperiment", + "location": "centraluseuap", + "identity": { + "type": "SystemAssigned", + "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56", + "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6" + }, + "properties": { + "steps": [ + { + "name": "step1", + "branches": [ + { + "name": "branch1", + "actions": [ + { + "type": "Continuous", + "name": "urn:csci:provider:providername:Shutdown/1.0", + "selectorId": "selector1", + "duration": "PT10M", + "parameters": { + "restartWhenComplete": true + } + } + ] + } + ] + } + ], + "selectors": [ + { + "type": "List", + "id": "selector1", + "targets": [ + { + "type": "ChaosTarget", + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine" + } + ] + } + ] + }, + "systemData": { + "createdAt": "2021-07-01T00:00:00.0Z", + "createdBy": "User", + "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976", + "lastModifiedAt": "2021-07-01T00:00:00.0Z", + "lastModifiedBy": "User", + "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976" + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetAExperimentExecutionDetails.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetAExperimentExecutionDetails.json new file mode 100644 index 000000000000..ea1ac878aa16 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetAExperimentExecutionDetails.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "experimentName": "exampleExperiment", + "executionDetailsId": "f24500ad-744e-4a26-864b-b76199eac333", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.Chaos/experiments/executionDetails", + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executionDetails/f24500ad-744e-4a26-864b-b76199eac333", + "name": "f24500ad-744e-4a26-864b-b76199eac333", + "properites": { + "createdDateTime": "2020-12-14T21:52:42.917983Z", + "lastActionDateTime": "2020-12-14T21:52:52.2552574Z", + "startDateTime": "2020-12-14T21:52:52.2552574Z", + "stopDateTime": "2020-12-14T21:56:18.9281956Z", + "experimentId": "f24500ad-744e-4a26-864b-b76199eac333", + "status": "failed", + "failureReason": "Dependency failure", + "runInformation": { + "steps": [ + { + "stepName": "FirstStep", + "stepId": "FirstStep", + "status": "failed", + "branches": [ + { + "branchName": "FirstBranch", + "branchId": "FirstBranch", + "status": "failed", + "actions": [ + { + "actionName": "urn:provider:agent-v2:Microsoft.Azure.Chaos.Fault.CPUPressureAllProcessors", + "actionId": "59499d33-6751-4b6e-a1f6-58f4d56a040a", + "status": "failed", + "startTime": "2020-12-14T13:56:13.6270153-08:00", + "endTime": "2020-12-14T13:56:13.6270153-08:00", + "targets": [ + { + "status": "succeeded", + "target": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/VM1", + "targetFailedTime": "2021-04-02T16:30:55+00:00", + "targetCompletedTime": "2021-04-02T17:30:55+00:00" + }, + { + "status": "failed", + "target": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/VM1", + "targetFailedTime": "2021-04-02T16:30:55+00:00", + "targetCompletedTime": "2021-04-02T17:30:55+00:00" + } + ] + } + ] + } + ] + } + ] + } + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetAExperimentStatus.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetAExperimentStatus.json new file mode 100644 index 000000000000..3df16e78064f --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetAExperimentStatus.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "experimentName": "exampleExperiment", + "statusId": "50734542-2e64-4e08-814c-cc0e7475f7e4", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/statuses/50734542-2e64-4e08-814c-cc0e7475f7e4", + "type": "Microsoft.Chaos/experiments/statuses", + "name": "50734542-2e64-4e08-814c-cc0e7475f7e4", + "properties": { + "status": "Successful", + "createdDateUtc": "2021-07-01T00:00:00.0Z", + "endDateUtc": "2021-07-01T01:00:00.0Z" + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetATarget.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetATarget.json new file mode 100644 index 000000000000..9356f4b29421 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetATarget.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "parentProviderNamespace": "Microsoft.Compute", + "parentResourceType": "virtualMachines", + "parentResourceName": "exampleVM", + "targetName": "Microsoft-Agent", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-Agent", + "type": "Microsoft.Chaos/targets", + "name": "Microsoft-Agent", + "location": "centraluseuap", + "properties": { + "identities": [ + { + "type": "CertificateSubjectIssuer", + "subject": "CN=example.subject" + } + ], + "agentProfileId": "ac4e8251-fdc9-4277-8e87-dc57fe5794cf" + }, + "systemData": { + "createdAt": "2021-07-01T00:00:00.0Z", + "lastModifiedAt": "2021-07-01T00:00:00.0Z" + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetATargetType.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetATargetType.json new file mode 100644 index 000000000000..60b7ad614d9f --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/GetATargetType.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "locationName": "westus2", + "targetTypeName": "Microsoft-Agent", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-Agent", + "type": "Microsoft.Chaos/locations/targetTypes", + "name": "Microsoft-Agent", + "location": "centraluseuap", + "properties": { + "displayName": "Chaos Agent", + "description": "A target represents Chaos Agent.", + "propertiesSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine.json", + "resourceTypes": [ + "Microsoft.Compute/virtualMachines", + "Microsoft.Compute/virtualMachineScaleSets" + ] + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListCapabilities.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListCapabilities.json new file mode 100644 index 000000000000..6e2670ad7d2d --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListCapabilities.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "parentProviderNamespace": "Microsoft.Compute", + "parentResourceType": "virtualMachines", + "parentResourceName": "exampleVM", + "targetName": "Microsoft-VirtualMachine", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0", + "type": "Microsoft.Chaos/targets/capabilities", + "name": "Shutdown-1.0", + "properties": { + "publisher": "Microsoft", + "targetType": "VirtualMachine", + "description": "Shutdown an Azure Virtual Machine for a defined period of time.", + "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json", + "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0" + }, + "systemData": { + "createdAt": "2020-05-14T05:08:38.4662189Z", + "lastModifiedAt": "2020-05-14T05:08:38.4662189Z" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities?continuationToken=&api-version=2022-07-01-preview" + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListCapabilityTypes.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListCapabilityTypes.json new file mode 100644 index 000000000000..458a5745cae1 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListCapabilityTypes.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "locationName": "westus2", + "targetTypeName": "Microsoft-VirtualMachine", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-VirtualMachine/capabilityTypes/Shutdown-1.0", + "type": "Microsoft.Chaos/locations/targetTypes/capabilityTypes", + "name": "Shutdown-1.0", + "properties": { + "kind": "Fault", + "publisher": "Microsoft", + "targetType": "VirtualMachine", + "displayName": "Shutdown VM", + "description": "Shutdown an Azure Virtual Machine for a defined period of time.", + "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json", + "runtimeProperties": { + "kind": "continuous" + }, + "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-VirtualMachine/capabilityTypes?continuationToken=&api-version=2022-07-01-preview" + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentExecutionsDetails.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentExecutionsDetails.json new file mode 100644 index 000000000000..208dec395ed2 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentExecutionsDetails.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "experimentName": "exampleExperiment", + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.Chaos/experiments/executionDetails", + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executionDetails/f24500ad-744e-4a26-864b-b76199eac333", + "name": "f24500ad-744e-4a26-864b-b76199eac333", + "properties": { + "createdDateTime": "2020-12-14T21:52:42.917983Z", + "lastActionDateTime": "2020-12-14T21:52:52.2552574Z", + "startDateTime": "2020-12-14T21:52:52.2552574Z", + "stopDateTime": "2020-12-14T21:56:18.9281956Z", + "status": "failed", + "failureReason": "Dependency failure", + "experimentId": "f24500ad-744e-4a26-864b-b76199eac333", + "runInformation": { + "steps": [ + { + "stepName": "FirstStep", + "stepId": "FirstStep", + "status": "failed", + "branches": [ + { + "branchName": "FirstBranch", + "branchId": "FirstBranch", + "status": "failed", + "actions": [ + { + "actionName": "urn:provider:agent-v2:Microsoft.Azure.Chaos.Fault.CPUPressureAllProcessors", + "actionId": "59499d33-6751-4b6e-a1f6-58f4d56a040a", + "status": "failed", + "startTime": "2020-12-14T13:56:13.6270153-08:00", + "endTime": "2020-12-14T13:56:13.6270153-08:00", + "targets": [ + { + "status": "succeeded", + "target": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/VM1", + "targetFailedTime": "2021-04-02T16:30:55+00:00", + "targetCompletedTime": "2021-04-02T17:30:55+00:00" + } + ] + } + ] + } + ] + } + ] + } + } + }, + { + "type": "Microsoft.Chaos/experiments/executionDetails", + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executionDetails/14d98367-52ef-4596-be4f-53fc81bbfc33", + "name": "14d98367-52ef-4596-be4f-53fc81bbfc33", + "properties": { + "createdDateTime": "2020-12-14T21:52:42.917983Z", + "lastActionDateTime": "2020-12-14T21:52:52.2552574Z", + "startDateTime": "2020-12-14T21:52:52.2552574Z", + "stopDateTime": "2020-12-14T21:56:18.9281956Z", + "status": "success", + "failureReason": "", + "experimentId": "14d98367-52ef-4596-be4f-53fc81bbfc33", + "runInformation": { + "steps": [ + { + "stepName": "FirstStep", + "stepId": "FirstStep", + "status": "success", + "branches": [ + { + "branchName": "FirstBranch", + "branchId": "FirstBranch", + "status": "success", + "actions": [ + { + "actionName": "urn:provider:agent-v2:Microsoft.Azure.Chaos.Fault.CPUPressureAllProcessors", + "actionId": "59499d33-6751-4b6e-a1f6-58f4d56a040a", + "status": "success", + "startTime": "2020-12-14T13:56:13.6270153-08:00", + "endTime": "2020-12-14T13:56:13.6270153-08:00", + "targets": [ + { + "status": "succeeded", + "target": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/VM1", + "targetFailedTime": "2021-04-02T16:30:55+00:00", + "targetCompletedTime": "2021-04-02T17:30:55+00:00" + } + ] + } + ] + } + ] + } + ] + } + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executionDetails?continuationToken=&api-version=2022-07-01-preview" + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentStatuses.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentStatuses.json new file mode 100644 index 000000000000..8404d91065ee --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentStatuses.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "experimentName": "exampleExperiment", + "continuationToken": null, + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/statuses/50734542-2e64-4e08-814c-cc0e7475f7e4", + "type": "Microsoft.Chaos/experiments/statuses", + "name": "50734542-2e64-4e08-814c-cc0e7475f7e4", + "properties": { + "status": "Successful", + "createdDateUtc": "2021-07-01T00:00:00.0Z", + "endDateUtc": "2021-07-01T01:00:00.0Z" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/statuses?continuationToken=&api-version=2022-07-01-preview" + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentsInAResourceGroup.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentsInAResourceGroup.json new file mode 100644 index 000000000000..443c487197ef --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentsInAResourceGroup.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "continuationToken": null, + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment", + "type": "Microsoft.Chaos/experiments", + "name": "exampleExperiment", + "location": "centraluseuap", + "identity": { + "type": "SystemAssigned", + "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56", + "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6" + }, + "properties": { + "steps": [ + { + "name": "step1", + "branches": [ + { + "name": "branch1", + "actions": [ + { + "type": "Continuous", + "name": "urn:csci:provider:providername:Shutdown/1.0", + "selectorId": "selector1", + "duration": "PT10M", + "parameters": { + "restartWhenComplete": true + } + } + ] + } + ] + } + ], + "selectors": [ + { + "type": "List", + "id": "selector1", + "targets": [ + { + "type": "ChaosTarget", + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine" + } + ] + } + ] + }, + "systemData": { + "createdAt": "2021-07-01T00:00:00.0Z", + "createdBy": "User", + "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976", + "lastModifiedAt": "2021-07-01T00:00:00.0Z", + "lastModifiedBy": "User", + "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments?continuationToken=&api-version=2022-07-01-preview" + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentsInASubscription.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentsInASubscription.json new file mode 100644 index 000000000000..df0a10faa4c0 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListExperimentsInASubscription.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "continuationToken": null, + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment", + "type": "Microsoft.Chaos/experiments", + "name": "exampleExperiment", + "location": "centraluseuap", + "identity": { + "type": "SystemAssigned", + "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56", + "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6" + }, + "properties": { + "steps": [ + { + "name": "step1", + "branches": [ + { + "name": "branch1", + "actions": [ + { + "type": "Continuous", + "name": "urn:csci:provider:providername:Shutdown/1.0", + "selectorId": "selector1", + "duration": "PT10M", + "parameters": { + "restartWhenComplete": true + } + } + ] + } + ] + } + ], + "selectors": [ + { + "type": "List", + "id": "selector1", + "targets": [ + { + "type": "ChaosTarget", + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine" + } + ] + } + ] + }, + "systemData": { + "createdAt": "2021-07-01T00:00:00.0Z", + "createdBy": "User", + "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976", + "lastModifiedAt": "2021-07-01T00:00:00.0Z", + "lastModifiedBy": "User", + "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/experiments?continuationToken=&api-version=2022-07-01-preview" + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListTargetTypes.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListTargetTypes.json new file mode 100644 index 000000000000..be6d74f74a0a --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListTargetTypes.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "locationName": "westus2", + "continuationToken": null, + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-Agent", + "type": "Microsoft.Chaos/locations/targetTypes", + "name": "Microsoft-Agent", + "location": "centraluseuap", + "properties": { + "displayName": "Chaos Agent", + "description": "A target represents Chaos Agent.", + "propertiesSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine.json", + "resourceTypes": [ + "Microsoft.Compute/virtualMachines", + "Microsoft.Compute/virtualMachineScaleSets" + ] + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes?continuationToken=&api-version=2022-07-01-preview" + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListTargets.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListTargets.json new file mode 100644 index 000000000000..5c52271ae086 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/ListTargets.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "parentProviderNamespace": "Microsoft.Compute", + "parentResourceType": "virtualMachines", + "parentResourceName": "exampleVM", + "continuationToken": null, + "api-version": "2022-07-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-Agent", + "type": "Microsoft.Chaos/targets", + "name": "Microsoft-Agent", + "location": "centraluseuap", + "properties": { + "identities": [ + { + "type": "CertificateSubjectIssuer", + "subject": "CN=example.subject" + } + ], + "agentProfileId": "ac4e8251-fdc9-4277-8e87-dc57fe5794cf" + }, + "systemData": { + "createdAt": "2021-07-01T00:00:00.0Z", + "lastModifiedAt": "2021-07-01T00:00:00.0Z" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets?continuationToken=&api-version=2022-07-01-preview" + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/StartAExperiment.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/StartAExperiment.json new file mode 100644 index 000000000000..01a8896b9ff9 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/examples/StartAExperiment.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291", + "resourceGroupName": "exampleRG", + "experimentName": "exampleExperiment", + "api-version": "2022-07-01-preview" + }, + "responses": { + "202": { + "headers": {}, + "body": { + "name": "exampleExperiment", + "statusUrl": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/statuses/50734542-2e64-4e08-814c-cc0e7475f7e4" + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/experiments.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/experiments.json new file mode 100644 index 000000000000..498abbd415c9 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/experiments.json @@ -0,0 +1,534 @@ +{ + "swagger": "2.0", + "info": { + "title": "Chaos Management", + "description": "Azure Chaos Resource Provider REST API", + "version": "2022-07-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": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/experiments": { + "get": { + "description": "Get a list of Experiment resources in a subscription.", + "tags": [ + "Experiments" + ], + "operationId": "Experiments_ListAll", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/experiments.json#/parameters/runningFilter" + }, + { + "$ref": "./types/common.json#/parameters/continuationToken" + } + ], + "responses": { + "200": { + "description": "List of Experiment resources returned if request was successful.", + "schema": { + "$ref": "./types/experiments.json#/definitions/experimentListResult" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all Experiments in a subscription.": { + "$ref": "./examples/ListExperimentsInASubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments": { + "get": { + "description": "Get a list of Experiment resources in a resource group.", + "tags": [ + "Experiments" + ], + "operationId": "Experiments_List", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/experiments.json#/parameters/runningFilter" + }, + { + "$ref": "./types/common.json#/parameters/continuationToken" + } + ], + "responses": { + "200": { + "description": "List of Experiment resources returned if request was successful.", + "schema": { + "$ref": "./types/experiments.json#/definitions/experimentListResult" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all Experiments in a resource group.": { + "$ref": "./examples/ListExperimentsInAResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}": { + "delete": { + "description": "Delete a Experiment resource.", + "tags": [ + "Experiments" + ], + "operationId": "Experiments_Delete", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/experiments.json#/parameters/experimentName" + } + ], + "responses": { + "200": { + "description": "Request was successful." + }, + "204": { + "description": "Request was successful." + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a Experiment in a resource group.": { + "$ref": "./examples/DeleteAExperiment.json" + } + } + }, + "get": { + "description": "Get a Experiment resource.", + "tags": [ + "Experiments" + ], + "operationId": "Experiments_Get", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/experiments.json#/parameters/experimentName" + } + ], + "responses": { + "200": { + "description": "Experiment resource returned if request was successful.", + "schema": { + "$ref": "./types/experiments.json#/definitions/experiment" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a Experiment in a resource group.": { + "$ref": "./examples/GetAExperiment.json" + } + } + }, + "put": { + "description": "Create or update a Experiment resource.", + "tags": [ + "Experiments" + ], + "operationId": "Experiments_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "original-uri" + }, + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/experiments.json#/parameters/experimentName" + }, + { + "name": "experiment", + "description": "Experiment resource to be created or updated.", + "in": "body", + "required": true, + "schema": { + "$ref": "./types/experiments.json#/definitions/experiment" + } + } + ], + "responses": { + "200": { + "description": "Experiment resource returned if request was successful.", + "schema": { + "$ref": "./types/experiments.json#/definitions/experiment" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create/update a Experiment in a resource group.": { + "$ref": "./examples/CreateOrUpdateAExperiment.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}/cancel": { + "post": { + "description": "Cancel a running Experiment resource.", + "tags": [ + "Experiments" + ], + "operationId": "Experiments_Cancel", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "original-uri" + }, + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/experiments.json#/parameters/experimentName" + } + ], + "responses": { + "202": { + "description": "Operation result returned if request was successful.", + "schema": { + "$ref": "./types/experiments.json#/definitions/experimentCancelOperationResult" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Cancel a running Experiment.": { + "$ref": "./examples/CancelAExperiment.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}/start": { + "post": { + "description": "Start a Experiment resource.", + "tags": [ + "Experiments" + ], + "operationId": "Experiments_Start", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/experiments.json#/parameters/experimentName" + } + ], + "responses": { + "202": { + "description": "Operation result returned if request was successful.", + "schema": { + "$ref": "./types/experiments.json#/definitions/experimentStartOperationResult" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Start a Experiment.": { + "$ref": "./examples/StartAExperiment.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}/statuses": { + "get": { + "description": "Get a list of statuses of a Experiment resource.", + "tags": [ + "Experiments" + ], + "operationId": "Experiments_ListAllStatuses", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/experiments.json#/parameters/experimentName" + } + ], + "responses": { + "200": { + "description": "List of statuses returned if request was successful.", + "schema": { + "$ref": "./types/experiments.json#/definitions/experimentStatusListResult" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all statuses of a Experiment.": { + "$ref": "./examples/ListExperimentStatuses.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}/statuses/{statusId}": { + "get": { + "description": "Get a status of a Experiment resource.", + "tags": [ + "Experiments" + ], + "operationId": "Experiments_GetStatus", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/experiments.json#/parameters/experimentName" + }, + { + "$ref": "./types/experiments.json#/parameters/statusId" + } + ], + "responses": { + "200": { + "description": "Status returned if request was successful.", + "schema": { + "$ref": "./types/experiments.json#/definitions/experimentStatus" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get the status of a Experiment.": { + "$ref": "./examples/GetAExperimentStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}/executionDetails": { + "get": { + "tags": [ + "Experiments" + ], + "description": "Get a list of execution details of a Experiment resource.", + "operationId": "Experiments_ListExecutionDetails", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/experiments.json#/parameters/experimentName" + } + ], + "responses": { + "200": { + "description": "Execution detail if request was successful.", + "schema": { + "$ref": "./types/experiments.json#/definitions/experimentExecutionDetailsListResult" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List experiment executions details": { + "$ref": "./examples/ListExperimentExecutionsDetails.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}/executionDetails/{executionDetailsId}": { + "get": { + "tags": [ + "Experiments" + ], + "description": "Get an execution detail of a Experiment resource.", + "operationId": "Experiments_GetExecutionDetails", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/experiments.json#/parameters/experimentName" + }, + { + "$ref": "./types/experiments.json#/parameters/executionDetailsId" + } + ], + "responses": { + "200": { + "description": "List of execution details in request was successful.", + "schema": { + "$ref": "./types/experiments.json#/definitions/experimentExecutionDetails" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get experiment execution details": { + "$ref": "./examples/GetAExperimentExecutionDetails.json" + } + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/operations.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/operations.json new file mode 100644 index 000000000000..eef4e4be628f --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/operations.json @@ -0,0 +1,70 @@ +{ + "swagger": "2.0", + "info": { + "title": "Chaos Management", + "description": "Azure Chaos Resource Provider REST API", + "version": "2022-07-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.Chaos/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Get a list all available Operations.", + "operationId": "Operations_ListAll", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "List of Operations returned if request was successful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": {} + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/targetTypes.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/targetTypes.json new file mode 100644 index 000000000000..b694ce00cadb --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/targetTypes.json @@ -0,0 +1,125 @@ +{ + "swagger": "2.0", + "info": { + "title": "Chaos Management", + "description": "Azure Chaos Resource Provider REST API", + "version": "2022-07-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": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{locationName}/targetTypes": { + "get": { + "description": "Get a list of Target Type resources for given location.", + "tags": [ + "TargetTypes" + ], + "operationId": "TargetTypes_List", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/locationName" + }, + { + "$ref": "./types/common.json#/parameters/continuationToken" + } + ], + "responses": { + "200": { + "description": "List of Target Type resources returned if request was successful.", + "schema": { + "$ref": "./types/targetTypes.json#/definitions/targetTypeListResult" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all Target Types for westus2 location.": { + "$ref": "./examples/ListTargetTypes.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{locationName}/targetTypes/{targetTypeName}": { + "get": { + "description": "Get a Target Type resources for given location.", + "tags": [ + "TargetTypes" + ], + "operationId": "TargetTypes_Get", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/locationName" + }, + { + "$ref": "./types/common.json#/parameters/targetTypeName" + } + ], + "responses": { + "200": { + "description": "Target Type resource returned if request was successful.", + "schema": { + "$ref": "./types/targetTypes.json#/definitions/targetType" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a Target Type for westus2 location": { + "$ref": "./examples/GetATargetType.json" + } + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/targets.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/targets.json new file mode 100644 index 000000000000..544e21c2e912 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/targets.json @@ -0,0 +1,250 @@ +{ + "swagger": "2.0", + "info": { + "title": "Chaos Management", + "description": "Azure Chaos Resource Provider REST API", + "version": "2022-07-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": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets": { + "get": { + "description": "Get a list of Target resources that extend a tracked regional resource.", + "tags": [ + "Targets" + ], + "operationId": "Targets_List", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/common.json#/parameters/parentProviderNamespace" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceType" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceName" + }, + { + "$ref": "./types/common.json#/parameters/continuationToken" + } + ], + "responses": { + "200": { + "description": "List of Target resources returned if request was successful.", + "schema": { + "$ref": "./types/targets.json#/definitions/targetListResult" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all Targets that extend a virtual machine resource.": { + "$ref": "./examples/ListTargets.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}": { + "get": { + "description": "Get a Target resource that extends a tracked regional resource.", + "tags": [ + "Targets" + ], + "operationId": "Targets_Get", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/common.json#/parameters/parentProviderNamespace" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceType" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceName" + }, + { + "$ref": "./types/common.json#/parameters/targetName" + } + ], + "responses": { + "200": { + "description": "Target resource returned if request was successful.", + "schema": { + "$ref": "./types/targets.json#/definitions/target" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a Target that extends a virtual machine resource.": { + "$ref": "./examples/GetATarget.json" + } + } + }, + "delete": { + "description": "Delete a Target resource that extends a tracked regional resource.", + "tags": [ + "Targets" + ], + "operationId": "Targets_Delete", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/common.json#/parameters/parentProviderNamespace" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceType" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceName" + }, + { + "$ref": "./types/common.json#/parameters/targetName" + } + ], + "responses": { + "200": { + "description": "Target resource deletion was successful." + }, + "204": { + "description": "Target resource deletion was successful." + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a Target that extends a virtual machine resource.": { + "$ref": "./examples/DeleteATarget.json" + } + } + }, + "put": { + "description": "Create or update a Target resource that extends a tracked regional resource.", + "tags": [ + "Targets" + ], + "operationId": "Targets_CreateOrUpdate", + "parameters": [ + { + "$ref": "./types/common.json#/parameters/apiVersion" + }, + { + "$ref": "./types/common.json#/parameters/subscriptionId" + }, + { + "$ref": "./types/common.json#/parameters/resourceGroupName" + }, + { + "$ref": "./types/common.json#/parameters/parentProviderNamespace" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceType" + }, + { + "$ref": "./types/common.json#/parameters/parentResourceName" + }, + { + "$ref": "./types/common.json#/parameters/targetName" + }, + { + "name": "target", + "description": "Target resource to be created or updated.", + "in": "body", + "required": true, + "schema": { + "$ref": "./types/targets.json#/definitions/target" + } + } + ], + "responses": { + "200": { + "description": "Target resource returned if request was successful.", + "schema": { + "$ref": "./types/targets.json#/definitions/target" + } + }, + "default": { + "description": "Error response returned if request was unsuccessful.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create/update a Target that extends a virtual machine resource.": { + "$ref": "./examples/CreateOrUpdateATarget.json" + } + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/capabilities.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/capabilities.json new file mode 100644 index 000000000000..0aebc7e76350 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/capabilities.json @@ -0,0 +1,84 @@ +{ + "swagger": "2.0", + "info": { + "title": "Capability Types", + "version": "2022-07-01-preview" + }, + "paths": {}, + "definitions": { + "capability": { + "type": "object", + "description": "Model that represents a Capability resource.", + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "systemData": { + "description": "The standard system metadata of a resource type.", + "$ref": "../../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of a capability resource.", + "$ref": "#/definitions/capabilityProperties", + "readOnly": true + } + } + }, + "capabilityProperties": { + "type": "object", + "description": "Model that represents the Capability properties model.", + "properties": { + "publisher": { + "type": "string", + "description": "String of the Publisher that this Capability extends.", + "readOnly": true + }, + "targetType": { + "type": "string", + "description": "String of the Target Type that this Capability extends.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Localized string of the description.", + "readOnly": true + }, + "parametersSchema": { + "$ref": "./common.json#/definitions/url", + "description": "URL to retrieve JSON schema of the Capability parameters.", + "readOnly": true + }, + "urn": { + "$ref": "./common.json#/definitions/urn", + "description": "String of the URN for this Capability Type.", + "readOnly": true + } + }, + "additionalProperties": false + }, + "capabilityListResult": { + "type": "object", + "description": "Model that represents a list of Capability resources and a link for pagination.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/capability" + }, + "description": "List of Capability resources.", + "readOnly": true + }, + "nextLink": { + "$ref": "./common.json#/definitions/urlNullable", + "description": "URL to retrieve the next page of Capability resources.", + "readOnly": true + } + }, + "additionalProperties": false + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/capabilityTypes.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/capabilityTypes.json new file mode 100644 index 000000000000..286d7d0a8e1a --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/capabilityTypes.json @@ -0,0 +1,100 @@ +{ + "swagger": "2.0", + "info": { + "title": "Capability Metadata Types", + "version": "2022-07-01-preview" + }, + "paths": {}, + "definitions": { + "capabilityType": { + "type": "object", + "description": "Model that represents a Capability Type resource.", + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "systemData": { + "$ref": "../../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + }, + "location": { + "type": "string", + "description": "Location of the Capability Type resource." + }, + "properties": { + "$ref": "#/definitions/capabilityTypeProperties", + "readOnly": true + } + } + }, + "capabilityTypeProperties": { + "type": "object", + "description": "Model that represents the Capability Type properties model.", + "properties": { + "publisher": { + "type": "string", + "description": "String of the Publisher that this Capability Type extends.", + "readOnly": true + }, + "targetType": { + "type": "string", + "description": "String of the Target Type that this Capability Type extends.", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "Localized string of the display name.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Localized string of the description.", + "readOnly": true + }, + "parametersSchema": { + "$ref": "./common.json#/definitions/url", + "description": "URL to retrieve JSON schema of the Capability Type parameters.", + "readOnly": true + }, + "urn": { + "$ref": "./common.json#/definitions/urn", + "description": "String of the URN for this Capability Type.", + "readOnly": true + }, + "kind": { + "type": "string", + "description": "String of the kind of this Capability Type.", + "readOnly": true + }, + "runtimeProperties": { + "$ref": "./common.json#/definitions/runtimeProperties", + "description": "Runtime properties of this Capability Type.", + "readOnly": true + } + }, + "additionalProperties": false + }, + "capabilityTypeListResult": { + "type": "object", + "description": "Model that represents a list of Capability Type resources and a link for pagination.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/capabilityType" + }, + "description": "List of Capability Type resources.", + "readOnly": true + }, + "nextLink": { + "$ref": "./common.json#/definitions/urlNullable", + "description": "URL to retrieve the next page of Capability Type resources.", + "readOnly": true + } + }, + "additionalProperties": false + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/common.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/common.json new file mode 100644 index 000000000000..7836a8da6bc8 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/common.json @@ -0,0 +1,216 @@ +{ + "swagger": "2.0", + "info": { + "title": "Common Types", + "version": "2022-07-01-preview" + }, + "paths": {}, + "definitions": { + "resourceIdentity": { + "type": "object", + "description": "The managed identity of a resource.", + "properties": { + "type": { + "type": "string", + "description": "String of the resource identity type.", + "enum": [ + "None", + "SystemAssigned" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "principalId": { + "type": "string", + "description": "GUID that represents the principal ID of this resource identity.", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "readOnly": true + }, + "tenantId": { + "type": "string", + "description": "GUID that represents the tenant ID of this resource identity.", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "readOnly": true + } + }, + "required": [ + "type" + ], + "additionalProperties": false + }, + "runtimeProperties": { + "type": "object", + "description": "The runtime properties of a resource.", + "properties": { + "kind": { + "type": "string", + "description": "String of the kind of the resource's action type (continuous or discrete).", + "readOnly": true + } + } + }, + "url": { + "type": "string", + "description": "String that represents a URL.", + "maxLength": 2048, + "x-nullable": false + }, + "urn": { + "type": "string", + "description": "String that represents a URN.", + "maxLength": 2048, + "x-nullable": false + }, + "urlNullable": { + "type": "string", + "description": "Optional string that represents a URL.", + "maxLength": 2048, + "x-nullable": true + } + }, + "parameters": { + "apiVersion": { + "name": "api-version", + "description": "String that sets the API version.", + "type": "string", + "in": "query", + "required": true, + "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}(|-preview)$", + "x-ms-parameter-location": "client" + }, + "subscriptionId": { + "name": "subscriptionId", + "description": "GUID that represents an Azure subscription ID.", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "x-ms-parameter-location": "client" + }, + "resourceGroupName": { + "name": "resourceGroupName", + "description": "String that represents an Azure resource group.", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9_\\-\\.\\(\\)]*[a-zA-Z0-9_\\-\\(\\)]$", + "x-ms-parameter-location": "method" + }, + "parentResourcePath": { + "name": "parentResourcePath", + "description": "String that represents the path to a parent resource starting with the providers segment.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "parentProviderNamespace": { + "name": "parentProviderNamespace", + "description": "String that represents a resource provider namespace.", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9]+\\.[a-zA-Z0-9]+$", + "x-ms-parameter-location": "method" + }, + "parentResourceType": { + "name": "parentResourceType", + "description": "String that represents a resource type.", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9_\\-\\.]+$", + "x-ms-parameter-location": "method" + }, + "parentResourceName": { + "name": "parentResourceName", + "description": "String that represents a resource name.", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9_\\-\\.]+$", + "x-ms-parameter-location": "method" + }, + "targetName": { + "name": "targetName", + "description": "String that represents a Target resource name.", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9_\\-\\.]+$", + "x-ms-parameter-location": "method" + }, + "capabilityName": { + "name": "capabilityName", + "description": "String that represents a Capability resource name.", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9\\-\\.]+-\\d\\.\\d$", + "x-ms-parameter-location": "method" + }, + "targetTypeName": { + "name": "targetTypeName", + "description": "String that represents a Target Type resource name.", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9_\\-\\.]+$", + "x-ms-parameter-location": "method" + }, + "capabilityTypeName": { + "name": "capabilityTypeName", + "description": "String that represents a Capability Type resource name.", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9\\-\\.]+-\\d\\.\\d$", + "x-ms-parameter-location": "method" + }, + "locationName": { + "name": "locationName", + "description": "String that represents a Location resource name.", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9_\\-\\.]+$", + "x-ms-parameter-location": "method" + }, + "artifactSetDefinitionName": { + "name": "artifactSetDefinitionName", + "description": "String that represents an Artifact Set Definition resource name.", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9_\\-\\.]+$", + "x-ms-parameter-location": "method" + }, + "artifactSetSnapshotName": { + "name": "artifactSetSnapshotName", + "description": "String that represents an Artifact Set Snapshot resource name.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "artifactSnapshotName": { + "name": "artifactSnapshotName", + "description": "String that represents an Artifact Snapshot resource name.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "continuationToken": { + "name": "continuationToken", + "description": "String that sets the continuation token.", + "type": "string", + "in": "query", + "x-ms-parameter-location": "method", + "x-nullable": false + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/experiments.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/experiments.json new file mode 100644 index 000000000000..139ee8833f80 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/experiments.json @@ -0,0 +1,756 @@ +{ + "swagger": "2.0", + "info": { + "title": "Experiment Types", + "version": "2022-07-01-preview" + }, + "paths": {}, + "parameters": { + "experimentName": { + "name": "experimentName", + "description": "String that represents a Experiment resource name.", + "type": "string", + "in": "path", + "required": true, + "minLength": 1, + "pattern": "^[^<>%&:?#/\\\\]+$", + "x-ms-parameter-location": "method" + }, + "statusId": { + "name": "statusId", + "description": "GUID that represents a Experiment status.", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "x-ms-parameter-location": "method" + }, + "runningFilter": { + "name": "running", + "description": "Optional value that indicates whether to filter results based on if the Experiment is currently running. If null, then the results will not be filtered.", + "type": "boolean", + "in": "query", + "x-ms-parameter-location": "method", + "x-nullable": false + }, + "executionDetailsId": { + "name": "executionDetailsId", + "in": "path", + "required": true, + "x-ms-parameter-location": "method", + "description": "GUID that represents a Experiment execution detail.", + "type": "string", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" + } + }, + "definitions": { + "experiment": { + "type": "object", + "description": "Model that represents a Experiment resource.", + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "systemData": { + "description": "The system metadata of the experiment resource.", + "$ref": "../../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + }, + "identity": { + "description": "The identity of the experiment resource.", + "$ref": "./common.json#/definitions/resourceIdentity" + }, + "properties": { + "description": "The properties of the experiment resource.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/experimentProperties" + } + }, + "required": [ + "properties" + ] + }, + "experimentProperties": { + "description": "Model that represents the Experiment properties model.", + "type": "object", + "properties": { + "steps": { + "type": "array", + "items": { + "$ref": "#/definitions/step" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "List of steps.", + "minItems": 1 + }, + "selectors": { + "type": "array", + "items": { + "$ref": "#/definitions/selector" + }, + "description": "List of selectors.", + "minItems": 1 + }, + "startOnCreation": { + "description": "A boolean value that indicates if experiment should be started on creation or not.", + "type": "boolean", + "x-nullable": true + } + }, + "required": [ + "steps", + "selectors" + ], + "additionalProperties": false + }, + "experimentListResult": { + "type": "object", + "description": "Model that represents a list of Experiment resources and a link for pagination.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/experiment" + }, + "description": "List of Experiment resources.", + "readOnly": true + }, + "nextLink": { + "$ref": "./common.json#/definitions/urlNullable", + "description": "URL to retrieve the next page of Experiment resources.", + "readOnly": true + } + }, + "additionalProperties": false + }, + "step": { + "type": "object", + "description": "Model that represents a step in the Experiment resource.", + "properties": { + "name": { + "type": "string", + "description": "String of the step name.", + "minLength": 1 + }, + "branches": { + "type": "array", + "description": "List of branches.", + "items": { + "$ref": "#/definitions/branch" + }, + "x-ms-identifiers": [ + "name" + ], + "minItems": 1 + } + }, + "required": [ + "name", + "branches" + ], + "additionalProperties": false + }, + "branch": { + "type": "object", + "description": "Model that represents a branch in the step.", + "properties": { + "name": { + "type": "string", + "description": "String of the branch name.", + "minLength": 1 + }, + "actions": { + "type": "array", + "description": "List of actions.", + "items": { + "$ref": "#/definitions/action" + }, + "x-ms-identifiers": [ + "name" + ], + "minItems": 1 + } + }, + "required": [ + "name", + "actions" + ], + "additionalProperties": false + }, + "action": { + "type": "object", + "description": "Model that represents the base action model.", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Enum that discriminates between action models." + }, + "name": { + "$ref": "./common.json#/definitions/urn", + "description": "String that represents a Capability URN." + } + }, + "required": [ + "type", + "name" + ] + }, + "delayAction": { + "type": "object", + "description": "Model that represents a delay action.", + "allOf": [ + { + "$ref": "#/definitions/action" + } + ], + "properties": { + "duration": { + "type": "string", + "description": "ISO8601 formatted string that represents a duration.", + "pattern": "^P(\\d+Y)?(\\d+M)?(\\d+D)?(T(\\d+H)?(\\d+M)?(\\d+(\\.\\d+)?S)?)?$" + } + }, + "required": [ + "duration" + ], + "additionalProperties": false, + "x-ms-discriminator-value": "delay" + }, + "discreteAction": { + "type": "object", + "description": "Model that represents a discrete action.", + "allOf": [ + { + "$ref": "#/definitions/action" + } + ], + "properties": { + "parameters": { + "description": "List of key value pairs.", + "type": "array", + "items": { + "$ref": "#/definitions/keyValuePair" + }, + "x-ms-identifiers": [ + "key" + ] + }, + "selectorId": { + "type": "string", + "description": "String that represents a selector.", + "minLength": 1 + } + }, + "required": [ + "parameters", + "selectorId" + ], + "additionalProperties": false, + "x-ms-discriminator-value": "discrete" + }, + "continuousAction": { + "type": "object", + "description": "Model that represents a continuous action.", + "allOf": [ + { + "$ref": "#/definitions/action" + } + ], + "properties": { + "duration": { + "type": "string", + "description": "ISO8601 formatted string that represents a duration.", + "pattern": "^P(\\d+Y)?(\\d+M)?(\\d+D)?(T(\\d+H)?(\\d+M)?(\\d+(\\.\\d+)?S)?)?$" + }, + "parameters": { + "description": "List of key value pairs.", + "type": "array", + "items": { + "$ref": "#/definitions/keyValuePair" + }, + "x-ms-identifiers": [ + "key" + ] + }, + "selectorId": { + "type": "string", + "description": "String that represents a selector.", + "minLength": 1 + } + }, + "required": [ + "duration", + "parameters", + "selectorId" + ], + "additionalProperties": false, + "x-ms-discriminator-value": "continuous" + }, + "keyValuePair": { + "description": "A map to describe the settings of an action.", + "type": "object", + "properties": { + "key": { + "description": "The name of the setting for the action.", + "type": "string", + "minLength": 1 + }, + "value": { + "description": "The value of the setting for the action.", + "type": "string", + "minLength": 1 + } + }, + "required": [ + "key", + "value" + ], + "additionalProperties": false + }, + "selector": { + "type": "object", + "description": "Model that represents a selector in the Experiment resource.", + "properties": { + "type": { + "type": "string", + "description": "Enum of the selector type.", + "enum": [ + "Percent", + "Random", + "Tag", + "List" + ], + "x-ms-enum": { + "name": "SelectorType", + "modelAsString": false + } + }, + "id": { + "type": "string", + "description": "String of the selector ID.", + "minLength": 1 + }, + "targets": { + "type": "array", + "description": "List of Target references.", + "minItems": 1, + "items": { + "$ref": "#/definitions/targetReference" + } + } + }, + "required": [ + "type", + "id", + "targets" + ], + "additionalProperties": false + }, + "targetReference": { + "type": "object", + "description": "Model that represents a reference to a Target in the selector.", + "properties": { + "type": { + "type": "string", + "description": "Enum of the Target reference type.", + "enum": [ + "ChaosTarget" + ], + "x-ms-enum": { + "name": "TargetReferenceType", + "modelAsString": false + } + }, + "id": { + "type": "string", + "description": "String of the resource ID of a Target resource.", + "pattern": "^\\/[Ss][Uu][Bb][Ss][Cc][Rr][Ii][Pp][Tt][Ii][Oo][Nn][Ss]\\/[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}\\/[Rr][Ee][Ss][Oo][Uu][Rr][Cc][Ee][Gg][Rr][Oo][Uu][Pp][Ss]\\/[a-zA-Z0-9_\\-\\.\\(\\)]*[a-zA-Z0-9_\\-\\(\\)]\\/[Pp][Rr][Oo][Vv][Ii][Dd][Ee][Rr][Ss]\\/[a-zA-Z0-9]+\\.[a-zA-Z0-9]+\\/[a-zA-Z0-9_\\-\\.]+\\/[a-zA-Z0-9_\\-\\.]+\\/[Pp][Rr][Oo][Vv][Ii][Dd][Ee][Rr][Ss]\\/[Mm][Ii][Cc][Rr][Oo][Ss][Oo][Ff][Tt]\\.[Cc][Hh][Aa][Oo][Ss]\\/[Tt][Aa][Rr][Gg][Ee][Tt][Ss]\\/[a-zA-Z0-9_\\-\\.]+$" + } + }, + "required": [ + "type", + "id" + ], + "additionalProperties": false + }, + "experimentCancelOperationResult": { + "type": "object", + "description": "Model that represents the result of a cancel Experiment operation.", + "properties": { + "name": { + "type": "string", + "description": "String of the Experiment name.", + "readOnly": true + }, + "statusUrl": { + "$ref": "./common.json#/definitions/url", + "description": "URL to retrieve the Experiment status.", + "readOnly": true + } + }, + "additionalProperties": false + }, + "experimentStartOperationResult": { + "type": "object", + "description": "Model that represents the result of a start Experiment operation.", + "properties": { + "name": { + "type": "string", + "description": "String of the Experiment name.", + "readOnly": true + }, + "statusUrl": { + "$ref": "./common.json#/definitions/url", + "description": "URL to retrieve the Experiment status.", + "readOnly": true + } + }, + "additionalProperties": false + }, + "experimentStatus": { + "type": "object", + "description": "Model that represents the status of a Experiment.", + "properties": { + "type": { + "type": "string", + "description": "String of the resource type.", + "readOnly": true + }, + "id": { + "type": "string", + "description": "String of the fully qualified resource ID.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "String of the resource name.", + "readOnly": true + }, + "properties": { + "description": "The properties of experiment execution status.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/experimentStatusProperties" + } + }, + "additionalProperties": false + }, + "experimentStatusProperties": { + "description": "Model that represents the Experiment status properties model.", + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "String that represents the status of a Experiment.", + "readOnly": true + }, + "createdDateUtc": { + "type": "string", + "format": "date-time", + "description": "String that represents the created date time of a Experiment.", + "readOnly": true + }, + "endDateUtc": { + "type": "string", + "format": "date-time", + "description": "String that represents the end date time of a Experiment.", + "readOnly": true, + "x-nullable": true + } + }, + "additionalProperties": false + }, + "experimentStatusListResult": { + "type": "object", + "description": "Model that represents a list of Experiment statuses and a link for pagination.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/experimentStatus" + }, + "description": "List of Experiment statuses.", + "readOnly": true + }, + "nextLink": { + "$ref": "./common.json#/definitions/urlNullable", + "description": "URL to retrieve the next page of Experiment statuses.", + "readOnly": true + } + }, + "additionalProperties": false + }, + "experimentExecutionActionTargetDetailsProperties": { + "description": "Model that represents the Experiment action target details properties model.", + "type": "object", + "properties": { + "status": { + "description": "The status of the execution.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target for the action.", + "type": "string", + "readOnly": true + }, + "targetFailedTime": { + "type": "string", + "format": "date-time", + "description": "String that represents the failed date time.", + "readOnly": true, + "x-nullable": true + }, + "targetCompletedTime": { + "type": "string", + "format": "date-time", + "description": "String that represents the completed date time.", + "readOnly": true, + "x-nullable": true + }, + "error": { + "description": "The error of the action.", + "type": "object", + "$ref": "#/definitions/experimentExecutionActionTargetDetailsError", + "readOnly": true, + "x-nullable": true + } + } + }, + "experimentExecutionActionTargetDetailsError": { + "type": "object", + "description": "Model that represents the Experiment action target details error model.", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message", + "type": "string", + "readOnly": true + } + } + }, + "experimentExecutionDetailsListResult": { + "description": "Model that represents a list of Experiment execution details and a link for pagination.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/experimentExecutionDetails" + }, + "description": "List of Experiment execution details.", + "readOnly": true + }, + "nextLink": { + "$ref": "./common.json#/definitions/urlNullable", + "description": "URL to retrieve the next page of Experiment execution details.", + "readOnly": true + } + } + }, + "experimentExecutionDetails": { + "description": "Model that represents the execution details of a Experiment.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "String of the resource type.", + "readOnly": true + }, + "id": { + "type": "string", + "description": "String of the fully qualified resource ID.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "String of the resource name.", + "readOnly": true + }, + "properties": { + "description": "The properties of the experiment execution details.", + "$ref": "#/definitions/experimentExecutionDetailsProperties", + "x-ms-client-flatten": true, + "readOnly": true + } + } + }, + "experimentExecutionDetailsProperties": { + "description": "Model that represents the Experiment execution details properties model.", + "type": "object", + "properties": { + "experimentId": { + "description": "The id of the experiment.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The value of the status of the experiment execution.", + "type": "string", + "readOnly": true + }, + "failureReason": { + "description": "The reason why the execution failed.", + "type": "string", + "readOnly": true + }, + "createdDateTime": { + "type": "string", + "format": "date-time", + "description": "String that represents the created date time.", + "readOnly": true + }, + "lastActionDateTime": { + "type": "string", + "format": "date-time", + "description": "String that represents the last action date time.", + "readOnly": true + }, + "startDateTime": { + "type": "string", + "format": "date-time", + "description": "String that represents the start date time.", + "readOnly": true + }, + "stopDateTime": { + "type": "string", + "format": "date-time", + "description": "String that represents the stop date time.", + "readOnly": true + }, + "runInformation": { + "description": "The information of the experiment run.", + "type": "object", + "properties": { + "steps": { + "description": "The steps of the experiment run.", + "type": "array", + "items": { + "$ref": "#/definitions/stepStatus" + }, + "x-ms-identifiers": [ + "stepName" + ], + "readOnly": true + } + }, + "readOnly": true + } + } + }, + "stepStatus": { + "description": "Model that represents the a list of branches and branch statuses.", + "type": "object", + "properties": { + "stepName": { + "description": "The name of the step.", + "type": "string", + "readOnly": true + }, + "stepId": { + "description": "The id of the step.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The value of the status of the step.", + "type": "string", + "readOnly": true + }, + "branches": { + "description": "The array of branches.", + "type": "array", + "items": { + "$ref": "#/definitions/branchStatus" + }, + "x-ms-identifiers": [ + "branchName" + ], + "readOnly": true + } + } + }, + "branchStatus": { + "description": "Model that represents the a list of actions and action statuses.", + "type": "object", + "properties": { + "branchName": { + "description": "The name of the branch status.", + "type": "string", + "readOnly": true + }, + "branchId": { + "description": "The id of the branch status.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the branch.", + "type": "string", + "readOnly": true + }, + "actions": { + "description": "The array of actions.", + "type": "array", + "items": { + "$ref": "#/definitions/actionStatus" + }, + "x-ms-identifiers": [ + "actionId" + ], + "readOnly": true + } + } + }, + "actionStatus": { + "type": "object", + "description": "Model that represents the an action and its status.", + "properties": { + "actionName": { + "description": "The name of the action status.", + "type": "string", + "readOnly": true + }, + "actionId": { + "description": "The id of the action status.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the action.", + "type": "string", + "readOnly": true + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "String that represents the start time of the action.", + "readOnly": true + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "String that represents the end time of the action.", + "readOnly": true + }, + "targets": { + "description": "The array of targets.", + "type": "array", + "items": { + "$ref": "#/definitions/experimentExecutionActionTargetDetailsProperties" + }, + "x-ms-identifiers": [], + "readOnly": true + } + } + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/targetTypes.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/targetTypes.json new file mode 100644 index 000000000000..8aa5907d6452 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/targetTypes.json @@ -0,0 +1,88 @@ +{ + "swagger": "2.0", + "info": { + "title": "Target Metadata Types", + "version": "2022-07-01-preview" + }, + "paths": {}, + "definitions": { + "targetType": { + "type": "object", + "description": "Model that represents a Target Type resource.", + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "systemData": { + "description": "The system metadata properties of the target type resource.", + "$ref": "../../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + }, + "location": { + "type": "string", + "description": "Location of the Target Type resource." + }, + "properties": { + "description": "The properties of the target type resource.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/targetTypeProperties" + } + }, + "required": [ + "properties" + ] + }, + "targetTypeProperties": { + "type": "object", + "description": "Model that represents the base Target Type properties model.", + "properties": { + "displayName": { + "type": "string", + "description": "Localized string of the display name.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Localized string of the description.", + "readOnly": true + }, + "propertiesSchema": { + "$ref": "./common.json#/definitions/url", + "description": "URL to retrieve JSON schema of the Target Type properties.", + "readOnly": true + }, + "resourceTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of resource types this Target Type can extend.", + "readOnly": true + } + }, + "additionalProperties": false + }, + "targetTypeListResult": { + "type": "object", + "description": "Model that represents a list of Target Type resources and a link for pagination.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/targetType" + }, + "description": "List of Target Type resources.", + "readOnly": true + }, + "nextLink": { + "$ref": "./common.json#/definitions/urlNullable", + "description": "URL to retrieve the next page of Target Type resources.", + "readOnly": true + } + }, + "additionalProperties": false + } + } +} diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/targets.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/targets.json new file mode 100644 index 000000000000..8777016276f9 --- /dev/null +++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2022-07-01-preview/types/targets.json @@ -0,0 +1,64 @@ +{ + "swagger": "2.0", + "info": { + "title": "Target Types", + "version": "2022-07-01-preview" + }, + "paths": {}, + "definitions": { + "target": { + "type": "object", + "description": "Model that represents a Target resource.", + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v2/types.json#/definitions/Resource" + } + ], + "properties": { + "systemData": { + "description": "The system metadata of the target resource.", + "$ref": "../../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "readOnly": true + }, + "location": { + "type": "string", + "description": "Location of the target resource." + }, + "properties": { + "description": "The properties of the target resource.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/targetProperties" + } + }, + "required": [ + "properties" + ] + }, + "targetProperties": { + "type": "object", + "description": "Model that represents the base Target properties model.", + "properties": {}, + "additionalProperties": true + }, + "targetListResult": { + "type": "object", + "description": "Model that represents a list of Target resources and a link for pagination.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/target" + }, + "description": "List of Target resources.", + "readOnly": true + }, + "nextLink": { + "$ref": "./common.json#/definitions/urlNullable", + "description": "URL to retrieve the next page of Target resources.", + "readOnly": true + } + }, + "additionalProperties": false + } + } +} diff --git a/specification/chaos/resource-manager/readme.md b/specification/chaos/resource-manager/readme.md index 150018023621..5b1c5e056750 100644 --- a/specification/chaos/resource-manager/readme.md +++ b/specification/chaos/resource-manager/readme.md @@ -25,10 +25,35 @@ For other options on installation see [Installing AutoRest](https://aka.ms/autor These are the global settings for the chaos. ```yaml -title: ChaosManagementClient -description: Chaos Management Client openapi-type: arm -tag: package-2021-09-15-preview +tag: package-2022-07-01-preview +``` + +### Tag: package-2022-07-01-preview + +These settings apply only when `--tag=package-2022-07-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2022-07-01-preview' +directive: + - suppress: R3026 + reason: Patch is not implemented in this version. + where: + - $.definitions.experiment + - suppress: R4017 + reason: Proxy resource is not discoverable at the subscription level. + where: + - $.definitions.target + - $.definitions.artifactSetDefinition + - $.definitions.artifactSetSnapshot + +input-file: + - Microsoft.Chaos/preview/2022-07-01-preview/artifacts.json + - Microsoft.Chaos/preview/2022-07-01-preview/capabilities.json + - Microsoft.Chaos/preview/2022-07-01-preview/experiments.json + - Microsoft.Chaos/preview/2022-07-01-preview/operations.json + - Microsoft.Chaos/preview/2022-07-01-preview/targets.json + - Microsoft.Chaos/preview/2022-07-01-preview/targetTypes.json + - Microsoft.Chaos/preview/2022-07-01-preview/capabilityTypes.json ``` ### Tag: package-2021-09-15-preview @@ -41,8 +66,15 @@ directive: reason: Patch is not implemented in this version. where: - $.definitions.experiment + - suppress: R4017 + reason: Proxy resource is not discoverable at the subscription level. + where: + - $.definitions.target + - $.definitions.artifactSetDefinition + - $.definitions.artifactSetSnapshot input-file: + - Microsoft.Chaos/preview/2021-09-15-preview/artifacts.json - Microsoft.Chaos/preview/2021-09-15-preview/capabilities.json - Microsoft.Chaos/preview/2021-09-15-preview/experiments.json - Microsoft.Chaos/preview/2021-09-15-preview/operations.json @@ -51,6 +83,78 @@ input-file: - Microsoft.Chaos/preview/2021-09-15-preview/capabilityTypes.json ``` +### Tag: package-2021-08-11-preview + +These settings apply only when `--tag=package-2021-08-11-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-08-11-preview' +directive: + - suppress: R3026 + reason: Patch is not implemented in this version. + where: + - $.definitions.experiment + - suppress: R4017 + reason: Proxy resource is not discoverable at the subscription level. + where: + - $.definitions.target + - $.definitions.artifactSetDefinition + - $.definitions.artifactSetSnapshot + +input-file: + - Microsoft.Chaos/preview/2021-08-11-preview/artifacts.json + - Microsoft.Chaos/preview/2021-08-11-preview/capabilities.json + - Microsoft.Chaos/preview/2021-08-11-preview/experiments.json + - Microsoft.Chaos/preview/2021-08-11-preview/operations.json + - Microsoft.Chaos/preview/2021-08-11-preview/targets.json +``` + +### Tag: package-2021-07-05-preview + +These settings apply only when `--tag=package-2021-07-05-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-07-05-preview' +directive: + - suppress: R3026 + reason: Patch is not implemented in this version. + where: + - $.definitions.experiment + - suppress: R4017 + reason: Proxy resource is not discoverable at the subscription level. + where: + - $.definitions.target + - $.definitions.artifactSetDefinition + - $.definitions.artifactSetSnapshot + +input-file: + - Microsoft.Chaos/preview/2021-07-05-preview/artifacts.json + - Microsoft.Chaos/preview/2021-07-05-preview/capabilities.json + - Microsoft.Chaos/preview/2021-07-05-preview/experiments.json + - Microsoft.Chaos/preview/2021-07-05-preview/operations.json + - Microsoft.Chaos/preview/2021-07-05-preview/targets.json +``` + +### Tag: package-2021-07-01-preview + +These settings apply only when `--tag=package-2021-07-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-07-01-preview' +directive: + - suppress: R3026 + reason: Patch is not implemented in this version. + where: + - $.definitions.experiment + - suppress: R4017 + reason: Proxy resource is not discoverable at the subscription level. + where: + - $.definitions.target + +input-file: + - Microsoft.Chaos/preview/2021-07-01-preview/capabilities.json + - Microsoft.Chaos/preview/2021-07-01-preview/experiments.json + - Microsoft.Chaos/preview/2021-07-01-preview/operations.json + - Microsoft.Chaos/preview/2021-07-01-preview/targets.json +``` + --- # Code Generation @@ -60,7 +164,7 @@ input-file: This section describes what SDK should be generated by the automatic system. This is not used by Autorest itself. -``` yaml $(swagger-to-sdk) +```yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java @@ -68,13 +172,8 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-resource-manager-schemas - repo: azure-cli-extensions - - repo: azure-powershell ``` -## Az - -See configuration in [readme.az.md](./readme.az.md) - ## Go See configuration in [readme.go.md](./readme.go.md) @@ -90,27 +189,3 @@ See configuration in [readme.typescript.md](./readme.typescript.md) ## CSharp See configuration in [readme.csharp.md](./readme.csharp.md) - -## Suppression - -``` yaml -directive: - - suppress: TopLevelResourcesListBySubscription - where: $.definitions.target - from: targets.json - reason: |- - We have the top level resource list by subscription operation here: https://github.com/mariohdez/azure-rest-api-specs/blob/5a870f3163ae6e9cc5ed33d40cfff61764050213/specification/chaos/resource-manager/Microsoft.Chaos/preview/2021-09-15-preview/targets.json#L37 - - this is a false positive I believe. - - suppress: TopLevelResourcesListBySubscription - where: $.definitions.target - from: targets.json - reason: |- - we defined the toplevelresourcelistbysubscription here: - - https://github.com/mariohdez/azure-rest-api-specs/blob/5a870f3163ae6e9cc5ed33d40cfff61764050213/specification/chaos/resource-manager/Microsoft.Chaos/preview/2021-09-15-preview/targets.json#L37 - - suppress: EnumInsteadOfBoolean - where: $.definitions.Operation.properties.isDataAction - from: types.json - reason: We are consuming the type model declaration from "common". I don't think our service is responsible for updating this error... Plz push back otherwise. -```